@charset "utf-8";
/* CSS Document */
html {
	font-family:'Noto Sans JP','メイリオ','Meiryo','ＭＳ Ｐゴシック',sans-serif;
	color: #191919;
	font-size: 62.5%;
	word-break: break-all;
}
body {
	letter-spacing: .06em;
	line-height: 1.3;
}

a {
    color: inherit;
    text-decoration: none;
    transition: all 0.3s ease-out;
}

a:hover {
    opacity: 0.7;
}

html p {
	font-size: 13.5px;
	line-height: 1.8;
}

button, input, select, textarea {
  font-family : inherit;
}

mark { background:linear-gradient(transparent 40%, #ffe3e3 40%, #ffe3e3 95%, transparent 95% ); }
small { font-size: inherit;  }

@media screen and (max-width: 786px) {
	html {
		font-size: 57%;
	}
}

@media screen and (max-width: 480px) {
	html {
		font-size: 52%;
	}
    
    html p {
        font-size: 13px;
    }
}

/* nomal */
@font-face {
    font-family: 'Noto Sans JP';
    src: url('../font/Noto-Regular.woff') format('woff'),
	       url('../font/Noto-Regular.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}
/* bold */
@font-face {
    font-family: 'Noto Sans JP';
    src: url('../font/Noto-Bold.woff') format('woff'),
	       url('../font/Noto-Bold.otf') format('opentype');
    font-weight: bold;
    font-style: normal;
	font-display: swap;
}

.flex { 	
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.min {
    font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
	letter-spacing: 0;
}

.red { color: #FF3135; }

.center { text-align: center; }

.mb10 { margin-bottom: 1rem; }
.mb20 { margin-bottom: 2rem; }
.mb30 { margin-bottom: 3rem; }
.mb40 { margin-bottom: 4rem; }
.mb50 { margin-bottom: 5rem; }


@media screen and (max-width: 786px) {
	img {
		width: 100%;
		height: auto;
	}
}

@media screen and (min-width: 786px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

.address {
	width: auto;
	height: 1.1em;
	display: inline;
	vertical-align: middle;
}


:root {	
	--transition: all 0.3s ease-out;
	--width: 1200px;
	--color: #f41e1e;

	--icon-arrow: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 600 599.7"><path d="M0,521.3l148.2-221.5L0,78.3h401.1L600,299.8L401.1,521.3H0z" /></svg>');
	
	--icon-circle: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 600 600"><path d="M407.1,600c8.9-17.4,37.8-23.7,55.3-31.8c14.2-23.6,47.3-38.9,51.4-65.8c-4.4-17.1-36.9,29.1-38.7,23.6 c-6.4-0.4,2.1,15.9-6.1,11.6c-16.2,8.9-38,22.9-57.6,17c-5.1-6.2-6.9,10.2-10.4,4.2c-0.5-1.6-0.5-4.3-2.4-2.4 c-4.7,4.5-9-4.9-13.6,1.7c-3.4,3.8-6.3-1-9.2-2.9c-2.8,0.7-23.7,9.5-42.2-1.1c-84.3,54.9-196.8-12.9-261.7-75.1 C-55.6,348-7.8,87.9,170.5,20.7c10.2,8.7-80.8,52.1-76.7,82.7C193.3,4.1,346.7-27.3,473.9,29.1c62.5,34.8,135,127.8,125.2,211.4 C586.5,371.8,563.8,548.7,407.1,600z M124.5,240.6C90.8,486.1,407.4,368.2,344,510.9c181.6,31.7,277-291.7,144-389.7 C380.1-16.2,95.2,94.5,124.5,240.6z" /></svg>');
	
	--line-fude: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 1092.9 73.6"><path d="M0.1,24.2c-1.5-11.5,13.1-8.1,14-14.4c-1.6-5.2-2.9-12.8,5-8.5c85.9,16.3,183.8,9.6,270.8,16.5C494.5,33.4,737.2,21.7,929.3,29c4.9,0.2,21.4,0.7,8.6,3.1c0.9,0.3,2.2,0.5,3.4,0.6c23.4,2.4,0.8,5-8.3,4.2c-14.8-8.8-44.9,1-63.6-1.4c-2.3-1.9-5,0.6-7.7-0.4c17,1.9,62.2,4.2,88,3.2c4,0.2,16.6,2.1,11.6-4.1c13.7,0.1-4.5,4.6,10.5,4.4c1.2,2.3,0.3,4.1-0.7,6c0.5,1.7,7.8,1.6,5.8-1c3-8.5,13-2.3,19.8-4.8c2.7-1.7-3.2-4.2-3.2-1.5c-3.7,0.3-1.2-4.8,1-2c5.1-1.7,6.2,7.9,9.7,3.4c1.5-0.5,3.3,2,4.3,0.2c-0.2-3.4-6.9-0.3-5.3-3.2c6.5-2,47.1-0.9,31.5-3.1c-22.1-1.3-8.9-4.9,6.2-2.4c15.8,2.5,40.5-11.1,51.9,0.5c0.4-1.4-54.9,5-35.1,5.7c106.9,3-212.5,34.7-133.7,15.6c4.1-2.4-5.5-0.5-7.9-1.1c-4.3,0.5-6.5,3.8-7.6-1.9c-10.3,1-11.1,5.8-16.5-4.3c-3.6,0.8-18.7,1.6-9.8,3.2c6.4-1.4,13.3-0.2,9.8,8c-5.3-0.7-22.5,5.6-15.8-1.6c-1-1-2.3-1-3,0.4c-27.9,2.6-14.8-8.3-23.2-6.6c9.7-6.5,4.1,0.5,9.6,0.8c7.7-2.9,12-1,18.7-3.3c-1.9,0.1-0.5-5.6-4-5.6c-2.6,3.8-17.4-2.7-10.3,3.6c-2.8-0.8-5.7,2.2-8.1,0.7c-4.7,2.2-43.6,1.4-32.8-3.4c2.5,2.4,1.9-1.7,0-0.8c-18,3.1-16.5-2.1-5.2,6.3c0.3-3.8,6.2-2.3,1.3,0.6c4.7-0.4,9.6-3.8,14.6,0.2c53.1,7.5-31.3,7.8-45.6,5.5c11.1,2.6,1.5,9.2-1.5,2.6c-4.7,0.2-12.1,0.4-3.6,3.4c-14.1,1.5-78.4,3.8-45.2-2c1.2-6.7,3.6,0.5,6.4-0.9c6.5,0,14.8-1.4,21.1-1.2c0.3-2.7-6.7-0.2-9.3-0.7c-1-5.9,8.3-2,8.4-4.5c-18.6-2.1-86.5,5.1-42.2,3.5c25,1.5-4.6,4-15.6,4c12.4,5.9-32.1,4.8-15.9,2.5c3.7-2.4-4.3-1.6-6-2.1c3.9-2,10.7-3.5,15.2-5.2c-9.7-3.9-30.4,13.4-31,2.8c2.1,0.1,10.4-0.5,8.4-3.2c-23.2,0-52.7,4.3-60.3,6.5c-5.7-1.9-2.2,1.8-5.5-3.1c1.7-0.8,5.1,0.3,5.5-1.5c-30.6-3.3-203.6,9.5-143.1,0.9c19.5-2.7-5.8-2.8-14.3-1.2c-51.1,0.5-100.2,7.3-145.2,3.6c10,4.6-27.5,3.4-30.5,1.7C198.6,38,53.1,124.7,0.1,24.2z" /></svg>');
}

@media screen and (max-width: 786px) {
	:root {	
		--width: 100%;
	}
}


/*------------------------------------------------------

header

------------------------------------------------------*/

/*----h1----*/
header .head-h1 {
	background: #da0202;
}

header .head-h1 .inner {
	font-size: 11px;
	color: #FFF;
	width: var(--width);
	margin:  0 auto;
	padding: 5px 0;
	line-height: 1;
}

@media screen and (max-width: 786px) {
	header .head-h1 {
		display: none;
	}
}


header .head-cont {
	width: var(--width);
	margin:  0 auto;
	padding: 10px 0;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

header .head-cont .right {
	width: 585px;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

header .head-cont .right .number p {
	font-size: 12px;
}

header .head-cont .right .contact a {
	display: block;
	width: 200px;
	height: 100%;
	display:flex;
	justify-content: center;
	align-items: center;
	background: #0d2185;
	border-radius: 5px;	
}

header .head-cont .right .contact a span {
	position: relative;
	color: #FFF;
	font-weight: bold;
	font-size: 15px;
	padding: 0 30px 0 35px;
}
header .head-cont .right .contact a span:before,
header .head-cont .right .contact a span:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

header .head-cont .right .contact a span:before {
	background: url(../../_images/common/icon-mail.svg);
	width: 26px;
	height: 26px;
	left: 0;
}
header .head-cont .right .contact a span:after {
	background: url(../../_images/common/icon-arrow-b.svg);
	width: 15px;
	height: 15px;
	right: 0;
}

@media screen and (max-width: 786px) {
	header .head-cont {
		display: none;
	}
}


/*------------------------------------------------------

header　spメニュー

------------------------------------------------------*/

/*----sp-head----*/
.sp-head {
	display: none;
}

@media screen and (max-width: 786px) {
	main {
		margin-top: 60px;
	}
	
	header {
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		background: #FFF;
		border-top: 3px solid #990000;
		border-bottom: 1px solid #dbdbdb;
		box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
		padding-right: 57px;
		box-sizing: border-box;
		height: 60px;
		z-index: 9999;
	}
	
	.sp-head {
		display:flex;
		flex-flow: row wrap;
		justify-content: flex-end;
		align-items: center;
		height: 57px;
	}
	
	.sp-head .logo {
		width: 57px;
		position: absolute;
		top: 0;
		left: 0;
		box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
		z-index: 999999;
	}
	
	.sp-head ul {
		width: 176px;
		display:flex;
		flex-flow: row wrap;
		justify-content: space-between;
		border-left: 1px solid #eadcdc;
	}
	
	.sp-head ul li {
		width: calc( 175px / 3 );
		height: 57px;
	}
	
	.sp-head ul li a {
		display: block;
		border-right: 1px solid #eadcdc;
		padding: 3px;
	}
}



/*----slide-box----*/

.slide-box {
	display: none;
}
@media screen and (max-width: 786px) {
	/*ヘッダー追従*/
	.header-fixed{
		/* 追従 */
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		
		z-index: 100000;
		background-color: #fefefe;
		box-sizing: border-box;
	}
	
	.header-fixed-in{
		position: relative;
	}
	
	.slide-box{
		display: block;
	}
	/* チェックボックスは非表示（ラベルで操作するため） */
	.slide-box #header-hamburger{
		display: none;
	}
	
	/* ハンバーガーアイコンの位置を指定（左） */
	.slide-box .header-hamburger-icon{
		position: absolute;
		top: 0;
		right: 0;
		width: 57px;
		height: 57px;
		display: flex;
		align-items: center;
		justify-content: center;
		border: none;
	}
	/* ハンバーガーアイコンの三本線をCSSで書く（中央の線） */
	.slide-box .header-hamburger-icon span{
		display: block;
		position: relative;
		width: 26px;
		height: 3px;
		box-sizing: border-box;
		cursor: pointer;
		background: #5a0000;
	}
	
	/* ハンバーガーアイコンの三本線をCSSで書く（上下の線） */
	.slide-box .header-hamburger-icon span:before,
	.slide-box .header-hamburger-icon span:after{
		position: absolute;
		content: '';
		width: 100%;
		height: 3px;
		background-color: #5a0000;
		transition: all .4s;
	}
	.slide-box .header-hamburger-icon span:before{
		top: -8px;
	}
	.slide-box .header-hamburger-icon span:after{
		bottom: -8px;
	}
	
	/* checkedが入った時の動き */
	.slide-box #header-hamburger:checked ~ .header-hamburger-icon span {
		background: #FFF;
		-webkit-animation: active-btn05-bar02 .8s forwards;
		animation: active-btn05-bar02 .8s forwards;
	}
	.slide-box #header-hamburger:checked ~ .header-hamburger-icon span:before {
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	.slide-box #header-hamburger:checked ~ .header-hamburger-icon span:after {
		-webkit-transform: translateY(-8px) rotate(45deg);
		transform: translateY(-8px) rotate(45deg);
	}
	
	
	/* 背景を暗くする（デフォルトは非表示） */
	.slide-box #header-close{
		display: none;
		position: fixed;
		z-index: 150000;
		top: 60px;
		left: 0;
		width: 100%;
		height: 100%;
		background: #000;
		opacity: 0;
	}
	
	/*スライドで表示させるコンテンツ*/
	.slide-box #slide-content{
		z-index: 200000;
		overflow: auto;
		position: fixed;
		top: 60px;
		right: 0;
		height: 100%;
		box-sizing: border-box;
		max-width: 260px;
		transition: .3s;
		/* デフォルト非表示（左側の見えないところに位置させる） */
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		background: #FFF;
	}
	
	.slide-box #slide-content img {
		width: auto;
		max-width: 100%;
	}
	
	/*チェックが入ったらコンテンツを表示*/
	.slide-box #header-hamburger:checked ~ #slide-content{
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
	}
	
	/*チェックが入ったらコンテンツ外を暗くする*/
	.slide-box #header-hamburger:checked ~ #header-close{
		display: block;
		opacity: .3;
	}
	
	.slide-box #slide-content aside{
		margin-bottom: 40px;
		padding: 15px;
	}
}



/*------------------------------------------------------

side-box

------------------------------------------------------*/

.side-box .main-logo {
	margin-bottom: 20px;
}
.side-box .main-logo img {
	box-shadow: 0px 5px 5px 0px rgb(164, 126, 126);
}


.side-box .contact-board {
	margin-bottom: 10px;
}

.side-box .online-bnr {
	margin-bottom: 15px;
}

.side-box .right-btn ul {
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
	row-gap: 10px;
}

.side-box .right-btn {
	margin-bottom: 20px;
}

@media screen and (max-width: 786px) {
	.side-box .right-btn ul li:not(:last-child) {
		width: 48%;
	}
}


/*----right-contact----*/
.side-box .right-contact {
	border: 2px solid #a38454;
	border-radius: 10px;
	padding: 10px 20px;
	background: url("../../_images/common/right-contact-back.gif") repeat;
	margin-bottom: 20px;
}

.side-box .right-contact dt {
	text-align: center;
	font-weight: bold;
	letter-spacing: .1em;
	margin-bottom: 5px;
	text-shadow:
	1px 1px 0 #FFF, -1px -1px 0 #FFF,
	-1px 1px 0 #FFF, 1px -1px 0 #FFF,
	0px 1px 0 #FFF,  -1px 0 #FFF,
	-1px 0 0 #FFF, 1px 0 0 #FFF;
}
.side-box .right-contact dt em {
	font-size: 23px;
	font-weight: bold;
	color: #252323;
	display: block;
	border-bottom: 2px solid #811600;
}
.side-box .right-contact dt span {
	color: #c81e28;
	display: block;
	font-size: 16px;
}

.side-box .right-contact dd {
	font-size: 1.7rem;
	font-weight: bold;
	color: #805411;
}
.side-box .right-contact dd span {
	background: #252323;
	color: #FFF;
	padding: 1px 10px;
	margin-right: 10px;
	font-size: 1.4rem;
}
.side-box .button-box {
	margin: 10px auto 0;
	color: #FFF;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.1;
}
.side-box .button-box a {
	display: block;
	width: calc(100% - 4px);
	margin: 0 auto;
	border: 1px solid #eccc94;
	outline: 2px solid #896837;
	text-align: center;
	padding: 12px 20px;
	box-sizing: border-box;
}
.side-box .button-box a span {
	position: relative;
	padding: 0 0 0 27px;
	text-shadow: 0px 0px 6px rgba(48, 6, 6, 0.8);
	display: inline-block;
	background:none;
	margin:0;
}
.side-box .button-box a span:before {
	content: "";
	-webkit-mask-image: var(--icon-arrow);
	mask-image: var(--icon-arrow);
	mask-repeat: no-repeat;
	mask-position: center;
	width: 17px;
	height: 17px;
	display: block;
	position: absolute;
	left: 0;
	top: 57%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
.side-box .button-box.yellow a {
	background-image: -moz-linear-gradient( 90deg, rgb(236,133,39) 0%, rgb(237,204,98) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(236,133,39) 0%, rgb(237,204,98) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(236,133,39) 0%, rgb(237,204,98) 100%);
}
.side-box .button-box.yellow a span:before {
	background-image: -moz-linear-gradient( 0deg, rgb(191,104,0) 0%, rgb(171,36,0) 100%);
	background-image: -webkit-linear-gradient( 0deg, rgb(191,104,0) 0%, rgb(171,36,0) 100%);
	background-image: -ms-linear-gradient( 0deg, rgb(191,104,0) 0%, rgb(171,36,0) 100%);
}


@media screen and (max-width: 786px) {
	.side-box .right-contact dt em {
		font-size: 14px;
	}
	.side-box .right-contact dt span {
		font-size: 13px;
	}
	.side-box .button-box a{
		padding:9px 8px 12px;
	}
	.side-box .button-box a span{
		padding:0 0 0 20px;
	}
	.side-box .button-box a span::before {
		width:13px;
		height:13px;
	}
}


/*----nav-link----*/
.side-box .nav-link dl {
	margin-bottom: 20px;
	color: #FFF;
}

.side-box .nav-link dl dt {
	font-size: 1.7rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.side-box .nav-link dl dt a {
	display: block;
	background: #530d0d url("../../_images/common/right-tit-back.gif") no-repeat 5px 20px;
	border-radius: 100px 0 0 100px;
	padding: 5px 35px 5px 25px;
	position: relative;
	text-shadow: 0px 0px 8px rgba(48, 6, 6, 0.8);
}
.side-box .nav-link dl dt a:after {
	content: "";
	background: url('../../_images/common/icon-arrow.svg');
	background-size: contain;
	height: 14px;
	width: 14px;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	right: 10px;
}

.side-box .nav-link dl .link-none {
	display: block;
	background: #530d0d;
	border-radius: 100px 0 0 100px;
	padding: 5px 35px 5px 25px;
}


.side-box .nav-link dl dd {
	font-size: 13px;
	margin-bottom: 5px;
}

.side-box .nav-link dl dd a {
	background: #222222;
	padding: 4px 15px 4px 30px;
	border-radius: 100px 0 0 100px;
	display: block;
	position: relative;
}
.side-box .nav-link dl dd a:after {
	content: "";
	background: url('../../_images/common/icon-arrow.svg');
	background-size: contain;
	height: 10px;
	width: 10px;
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	left: 15px;
}

@media screen and (max-width: 786px) {
	.side-box .nav-link dl dd a {
		padding: 10px 15px 10px 30px;
	}
}


/*------------------------------------------------------

footer

------------------------------------------------------*/
.footer-cont {
	background: #f0f0f0;
}

.footer-cont .inner {
	width: var(--width);
	margin: 0 auto;
	padding: 5rem 0;
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
}


/*----foot-left----*/
.footer-cont .inner .foot-left {
	width: calc(100% - 290px);
	display:flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.footer-cont .inner .foot-left > div {
	width: 22%;
}

.footer-cont .inner .foot-left dl {
	font-size: 13px;
	line-height: 1.3;
}

.footer-cont .inner .foot-left dl:not(:last-child) {
	margin-bottom: 4rem;
}

.footer-cont .inner .foot-left dt {
	margin-bottom: 1.5rem;
}

.footer-cont .inner .foot-left dt:before {
	content: "■";
	margin-right: 3px;
}

.footer-cont .inner .foot-left dd:not(:last-child) {
	margin-bottom: 1.2rem;
}

.footer-cont .inner .foot-left a:hover {
	text-decoration: underline;
	opacity: 1;
}
.footer-cont .inner .foot-left a {
	text-decoration: none;
}


@media screen and (max-width: 786px) {
	.footer-cont .inner {
		padding: 5rem 0 0;
	}

	.footer-cont .inner .foot-left {
		width: calc(100% - 60px);
		margin: 0 auto 3rem;
	}
}

@media screen and (max-width: 480px) {
	.footer-cont .inner {
		padding: 0;
	}

	.footer-cont .inner .foot-left {
		padding: 0;
		margin-bottom: 3rem;
		width: 100%;
		border-top: 3px solid #d7a647;
	}

	.footer-cont .inner .foot-left > div {
		width: 100%;
	}

	.footer-cont .inner .foot-left dl:not(:last-child),
	.footer-cont .inner .foot-left dt {
		margin-bottom: 0;
	}
	
	.footer-cont .foot-left .accordion-block {
		display: none;	
	}

	.footer-cont .foot-left dt {
		background: #FFF;
		border-bottom: 1px solid #dbdbdb;
		margin-bottom: 0;
		position: relative;
	}
	.footer-cont .foot-left dt:before,
	.footer-cont .foot-left dt:after {
		content: "" !important;
		width: 12px;
		height: 2px;
		margin-right: 0 !important;
		background: #191919;
		display: block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		right: 25px;
		transition: .8s cubic-bezier(.2, 1, .2, 1);
		z-index: 2;
	}
	.footer-cont .foot-left dt:after {
		content: "";
		width: 2px;
		height: 12px;
		right: 30px;
	}
	.footer-cont .foot-left dt.selected:after {
    	transform: translateY(-50%) rotate(-90deg);
    	-webkit-transform: translateY(-50%) rotate(-90deg);
	}
	
	.footer-cont .foot-left dt span {
		display: block;
		padding: 13px 70px 13px 30px;
		position: relative;
		background: #f0f0f0;
	}
	
	.footer-cont .foot-left .accordion-block {
		padding: 25px;
		margin: 0;
		border-bottom: 1px solid #dbdbdb;
		box-sizing: border-box;
		background: #FFF;
	}
	
	.footer-cont .foot-left dd a {
		padding: 5px 15px;
	}

}



/*----foot-right----*/
.footer-cont .inner .foot-right {
	width: 220px;
	box-sizing: border-box;
	position: relative;
}
.footer-cont .inner .foot-right:before {
	content: "";
	height: 100%;
	width: 1px;
	background: #212121;
	display: block;
	position: absolute;
	left: -30px;
	top: 0;
}

.footer-cont .inner .foot-right .logo {
	box-shadow: 0px 6px 10px 0px rgb(187, 187, 187);
	margin-bottom: 2rem;
}

.footer-cont .inner .foot-right .logo img {
	width: 100%;
	height: auto;
}

.footer-cont .inner .foot-right .under {
	border: 1px solid #cbb;
	border-radius: 1rem;
	overflow: hidden;
}

.footer-cont .inner .foot-right address {
	padding: 2rem 2.5rem;
	background: #FFF;

}

.footer-cont .inner .foot-right .company-name {
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 5px;
}

.footer-cont .inner .foot-right .data {
	font-size: 1.2rem;
}

.footer-cont .inner .foot-right dl {
	border-top: 1px dashed #cbb;
	padding: 1.5rem 2.5rem;
	background: #f2efea;
	font-size: 1.2rem;
}

.footer-cont .inner .foot-right dl dt {
	font-size: 1.3rem;
	font-weight: bold;
}

@media screen and (max-width: 786px) {
	.footer-cont .inner .foot-right {
		width: 100%;
		display:flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: flex-start;
		padding: 0 2.5rem 2.5rem;
	}

	.footer-cont .inner .foot-right:before {
		content: none;
	}
	
	.footer-cont .inner .foot-right .logo {
		width: 130px;
	}
	.footer-cont .inner .foot-right .under {
		width: calc(100% - 150px);
		box-sizing: border-box;
	}
}

@media screen and (max-width: 480px) {
	
	.footer-cont .inner .foot-right {
		display: block;
	}
	
	.footer-cont .inner .foot-right .logo {
		width: 110px;
		margin: 0 auto 3rem;
	}
	
	.footer-cont .inner .foot-right .under {
		width: 100%;	
	}
}



footer .copy-area {
	background: #da0202;
	color: #FFF;
	padding: 1.8rem 30px 2rem;
	font-size: 1.3rem;
	text-align: center;
}


/*------------------------------------------------------

top-btn

------------------------------------------------------*/
.top-btn {
	position: fixed;
	right: -3rem;
	bottom: 9rem;
	font-weight: bold;
	font-size: 1.8rem;
	color: #f41e1e;
	z-index: 10;
}

.top-btn a {
	display: inline-block;
	transform: rotate(90deg);
}

.top-btn span {
	position: relative;
	padding-left: 4.5rem;
	z-index: 1;
}

.top-btn span:before {
	content: "";
	display: inline-block;
	width: 3.5rem;
	height: 1.4rem;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2012.6'%3E%3Cdefs%3E%3Cstyle%3E.st0%7Bfill:%23f41e1e;%7D%3C/style%3E%3C/defs%3E%3Cpolygon%20class='st0'%20points='8.1%2010.1%204.1%207.3%2050%207.3%2050%205.5%204.1%205.5%208.1%202.5%208.1%200%200%206.4%208.1%2012.6%208.1%2010.1'/%3E%3C/svg%3E");
	position: absolute;
	left: 0;
	top: 55%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: var(--transition);
}

.top-btn a:hover {
	opacity: 1;
}
.top-btn a:hover span:before {
	left: -8px;
}

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

	
}

@media screen and (max-width: 480px) {
	.top-btn {
		right: 15px;
		bottom: 30px;
		font-size: 0;
	}

	.top-btn span:before {
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		width: 1.5rem;
		height: 1.4rem;
	}

	.top-btn a:hover span:before {
		left: 20px;
	}

	.top-btn span:after {
		content: "";
		width: 40px;
		height: 40px;
		background: #FFF;
		display: block;
		border-radius: 50%;
		border: 1px solid #f41e1e;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		-webkit-transform: translate(-50%,-50%);
		z-index: -1;
	}
}