@charset "utf-8";

@property --text-color {
  syntax: "<color>";
  inherits: false;
  initial-value: #040000;
}

* {
	padding:0;
	margin:0px;
	outline:none;
	}
html {
	overflow: auto;
	}

body {
	overflow: hidden;
	text-align:center;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: 400;
	line-height: 1.6;
	-webkit-text-size-adjust:100%;
	color: var(--text-color);
}
.en {
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.en.it {
	font-style: italic;
}
.en.heavy {
	font-weight: 700;
}
.en-cond {
	font-family: "futura-pt-condensed", sans-serif;
	font-weight: 800;
	font-style: italic;
}
img {
	vertical-align:top;
	border:0;
	width: 100%;
	height: auto;
	}
p {
	max-height: 100%;
}
li {
	list-style-type: none;
}
a {
	text-decoration: none;
	color: #21242b;
}

/* --- class and other set --- */
.shadow {
	filter:drop-shadow(0.35rem 0.35rem 0.25rem rgba(0, 0, 0, 0.75));
}
.just {
	text-align: justify;
}
@media screen and (min-width: 1384px) {
html { font-size: 20px;}
}
@media screen and (min-width: 769px) {
html { font-size: 1.43vw;}
.contents { min-width: 67.53%; margin-inline: auto; max-width: min(94%, 940px);}
.sp { display:none;}
}
@media screen and (max-width: 768px) {
html { font-size: 3.125vw;}
.pc { display:none;}
}


/*
#header
*/
#header {
	width: 100%;
	position: fixed;
	background-color: #fff;
	top: 0;
	left: 0;
	z-index: 2;
}
@media screen and (min-width: 769px) {
#header {
	display: none;
}
}
@media screen and (max-width: 768px) {
#header {
	height: 7rem;
}
#header #logo { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;}
#header #logo img { width: 58.125%; margin-right: 1.25rem;}
#header .menubtn {
	position: fixed;
	top: 0;
	right: 0;
	width: 17.5%;
	height: 7rem;
	display: grid;
	align-items: center;
	justify-content: center;
}
#header .menubtn img.open { width: 2.05rem;}
#header .menubtn img.close { width: 1.4rem; display: none;}
#header #menu {
	height: 100vh;
	width: 100%;
	position: fixed;
	left: 100%;
	top: 7rem;
	background-color: #fff;
	transition: all .5s ease;
}
#header.open #menu {
	left: 0;
}
#header.open .menubtn img.open { display: none;}
#header.open .menubtn img.close { display: inline-block; }
#menu ul {
	border-top: 1px solid #252525;
}
#menu li a {
	display: block;
	font-size: 1.45rem;
	font-weight: 600;
	line-height: 3.25;
	border-bottom: 1px solid var(--text-color);
}
}


/*
#top
*/

#top { position: relative; color: #fff;}
#top hgroup { position: absolute; text-align: left;}
#top hgroup h1 img { display: block; margin-bottom: 0.15em;}
#top hgroup p, #top hgroup p strong {font-weight: 500; letter-spacing: 0.05em; }
@media screen and (min-width: 769px) {
#top { height: 59.4vw; max-height: 100vh; background-image: url(../images/main.jpg); background-size: cover; background-position: center 35%; }
#top hgroup { width: 46.56%; left: 13.5%; top: 35%; transform: scale(min(100vh / 59.4vw, 1));}
#top hgroup h1 { font-size: 3.2rem;}
#top hgroup p strong { font-size: 2.25rem; display: block; margin: 0.225em 0 0.2em; }
}
@media screen and (max-width: 768px) {
#top { height: 89.2vw; padding-top: 7rem; background-image: url(../images/main_sp.jpg); background-size: contain; background-position: center bottom; background-repeat: no-repeat; }
#top hgroup { width: 24.55rem; left: 2.25rem; top: 59%;}
#top hgroup h1 { font-size: 2.42rem;}
#top hgroup p strong { font-size: 1.75rem; display: block; margin: 0.225em 0 0.2em; }
}

/*
section
*/

section hgroup h2 { line-height: 1.3;}
#main .link-plate { width: 100%; background-color: #fff; padding: 1.3rem 0;}
.link-plate a { display: block; border: 0.1rem solid var(--text-color); background-color: #fff; font-weight: 600;}
#main .link-plate a { margin: 0 auto;}
@media screen and (min-width: 769px) {
.link-plate a { font-size: 0.9rem; line-height: 3.33; width: 16.66em; text-align: center; border-radius: 0.2rem; transition: all ease .3s;}
.link-plate a:hover { color: #fff; background-color: var(--text-color);}
section { padding: 6rem 0;}
section hgroup { margin-bottom: 2.25rem;}
section hgroup h2 { font-size: 3.5rem; margin-bottom: .2em;}
section hgroup p { font-size: .7rem;}
#main .link-plate a { font-size: 0.9rem; width: 15rem; line-height: 3rem;  border-radius: 0.2rem; }
#top .link-plate a { margin-top: 2.5rem;}
}
@media screen and (max-width: 768px) {
section { padding: 2.4rem 2.05rem;}
section hgroup { margin-bottom: 2.25rem;}
section hgroup h2 { font-size: 2.5rem;}
.link-plate a { font-size: 1.1rem; width: 46.88%; line-height: 3em;  border-radius: 0.4rem; }
#header .link-plate a { font-size: 1.2rem; width: 50%; margin: 3rem auto; }
}



/*
#section company
*/
section#company { background-color: #f8f9f9;}
section#company .shelf .unit { text-align: left;}
section#company .shelf .unit h3 { background-color: var(--text-color); color: #fff; text-align: center; letter-spacing: 0.05em;}
section#company .shelf .unit p { text-align: justify; line-height: 1.5;}
@media screen and (min-width: 769px) {
section#company hgroup { margin-bottom: 3rem;}
section#company .shelf .unit { margin-top: 1.8rem;}
section#company .shelf .unit h3 { font-size: 0.75rem; margin-bottom: 0.5em; width: 3.3rem;}
section#company .shelf .unit p { font-size: 0.7rem;}
}
@media screen and (max-width: 768px) {
section#company .shelf .unit { margin-top: 2.5rem;}
section#company .shelf .unit h3 { font-size: 0.95rem; margin-bottom: 0.5em; width: 5rem;}
}

/*
#section data
*/
section#data .shelf .unit { box-sizing: border-box; border: 0.1rem solid var(--text-color); border-radius: 0.4rem;}
section#data .shelf .unit div.pic-area { display: grid; justify-content: center; align-items: center; width: 100%; background-repeat: no-repeat; background-position: center center;}
section#data .shelf .unit:nth-of-type(3) { position: relative;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(1) span:nth-of-type(2),
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(2) span:nth-of-type(1) { color: #fff;}
section#data .shelf .unit:nth-of-type(1) div.pic-area { background-image: url(../images/pict1-1.svg);}
section#data .shelf .unit:nth-of-type(2) div.pic-area { background-image: url(../images/pict1-2.svg);}
section#data .shelf .unit:nth-of-type(4) div.pic-area { background-image: url(../images/pict1-4.svg);}
section#data .shelf .unit:nth-of-type(5) { background-image: url(../images/pict1-5.svg);  background-repeat: no-repeat; background-position: 86% 39%;}
section#data .shelf .unit:nth-of-type(6) div.pic-area { background-image: url(../images/pict1-6.svg);}
section#data p.note { margin-top: 0.7em; text-align: right;}
@media screen and (min-width: 769px) {
section#data .shelf { display: grid; grid-auto-flow: row; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: repeat(2, 9.1rem); width: 100%; gap: 0.9rem;}
section#data .shelf .unit h3{ font-size: 0.9rem; font-weight: 500; padding-top: 1em;}
section#data .shelf .unit div.pic-area { height: calc(100% - 3rem); }
section#data .shelf .unit div.pic-area p strong { font-size: 3.6rem; font-weight: 700;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half > span { display: inline-block;position: absolute;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p { font-size: 0.7rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p img { width: 4.85rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p strong { font-size: 1.3rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(1) span:nth-of-type(1) { top: 4.7rem; left: calc(50% - 8.9em);}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(1) span:nth-of-type(2) { top: 4.2rem; left: calc(50% - 3.25em);}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(2) span:nth-of-type(1) { top: 4.2rem; left: calc(50% + 0.25em);}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(2) span:nth-of-type(2) { top: 4.7rem; left: calc(50% + 4.25em)}
section#data .shelf .unit:nth-of-type(1) div.pic-area { background-size: 11.35rem auto;}
section#data .shelf .unit:nth-of-type(2) div.pic-area { background-size: 8.75rem auto;}
section#data .shelf .unit:nth-of-type(4) div.pic-area { background-size: 5.6rem auto;}
section#data .shelf .unit:nth-of-type(5) { background-size: 4.6rem auto;}
section#data .shelf .unit:nth-of-type(6) div.pic-area { background-size: 7rem auto;}
section#data p.note { font-size: 0.7rem;}
}
@media screen and (max-width: 768px) {
section#data .shelf { display: grid; grid-auto-flow: row; grid-template-columns: 1fr 1fr; grid-template-rows: repeat(9.4rem 8.1rem); width: 100%; gap: 0.9rem;}
section#data .shelf .unit { min-width: calc(50% - 0.45rem); min-height: 9.4rem;}
section#data .shelf .unit:nth-of-type(3) { grid-column: 1 / 3 ; grid-row: 2 / 3;}
section#data .shelf .unit:nth-of-type(6) { grid-column: 1 / 3 ; grid-row: 4 / 5;}
section#data .shelf .unit h3{ font-size: 1rem; font-weight: 500; padding-top: 1rem;}
section#data .shelf .unit.wide h3 { text-align: left; padding: 0.5rem 1rem;}
section#data .shelf .unit div.pic-area { height: calc(100% - 3rem);}
section#data .shelf .unit:nth-of-type(3) div.pic-area { height: 90%; margin-top: -7.5%;}
section#data .shelf .unit:nth-of-type(6) div.pic-area { height: calc(100% - 3.6rem);}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half > span { display: inline-block;position: absolute;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p { font-size: 0.9rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p img { width: 7rem;}
section#data .shelf .unit div.pic-area p strong { font-size: 2.8rem; font-weight: 700;}
section#data .shelf .unit:nth-of-type(6) div.pic-area p strong { font-size: 3.6rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p strong { font-size: 1.8rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(1) span:nth-of-type(1) { top: 5.3rem; left: 5.8rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(1) span:nth-of-type(2) { top: 3.1rem; left: 10.7rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(2) span:nth-of-type(1) { top: 3.1rem; left: 14.15rem;}
section#data .shelf .unit:nth-of-type(3) div.pic-area p span.half:nth-of-type(2) span:nth-of-type(2) { top: 2.5rem; left: 17.6rem;}
section#data .shelf .unit:nth-of-type(1) div.pic-area { background-size: 11.35rem auto;}
section#data .shelf .unit:nth-of-type(2) div.pic-area { background-size: 8.75rem auto;}
section#data .shelf .unit:nth-of-type(4) div.pic-area { background-size: 5.6rem auto;}
section#data .shelf .unit:nth-of-type(5) { background-size: 4.6rem auto;}
section#data .shelf .unit:nth-of-type(6) div.pic-area { background-size: 7rem auto;}
section#data p.note { font-size: 0.85rem;}
}
/*
#section ranking
*/
section#ranking .shelf .unit { border: 0.1rem solid var(--text-color); text-align:left; background-repeat: no-repeat;}
section#ranking .shelf .unit h3 { font-weight: 600;}
section#ranking .shelf .unit h3 span { color: #fff; text-align: center; background-repeat: no-repeat; background-image: url(../images/pict2-1.svg); background-size: contain;}
section#ranking .shelf .unit > div div.box { display: flex; align-items: center; background-color: #f8f9f9; border-radius: 0.4rem; background-image: url(../images/pict2-2.svg); background-repeat: no-repeat;}
@media screen and (min-width: 769px) {
section#ranking { padding-top: 3rem;}
section#ranking .shelf .unit { padding-right: 14.25rem; margin-bottom: 2rem; background-position: right top; background-size: contain;}
section#ranking .shelf .unit:last-child() { margin-bottom: 0;}
section#ranking .shelf .unit.no-image { padding-right: 0;}
section#ranking .shelf .unit h3 { line-height: 4.7rem; font-size: 1.05rem; margin: -0.5rem 0 0.5rem -0.2rem;}
section#ranking .shelf .unit h3 span { display: inline-block; width: 3.6rem; height: 4.7rem; line-height: 4.7rem; font-size: 1.8rem; margin-right: 0.75em;}
section#ranking .shelf .unit > div { padding: 0 1.9rem 1.5rem 1.9rem; }
section#ranking .shelf .unit.no-image > div { box-sizing: border-box; width: 100%; display: flex; justify-content: space-between; padding-bottom: 1rem;}
section#ranking .shelf .unit > div div.box { background-size: 1.97rem auto; background-position: 1.2rem center; height: 5rem;}
section#ranking .shelf .unit.no-image > div div.box { width: 48.5%;}
section#ranking .shelf .unit > div div.box:nth-of-type(1) { margin-bottom: 0.7rem;}
section#ranking .shelf .unit > div div.box p { font-size: 0.7rem; margin: 0 1.5rem 0 4.5rem;}
section#ranking .shelf .unit:nth-of-type(1) { background-image: url(../images/img1_1.jpg);}
section#ranking .shelf .unit:nth-of-type(2) { background-image: url(../images/img1_2.jpg);}
section#ranking .shelf .unit:nth-of-type(3) { background-image: url(../images/img1_3.jpg);}
}
@media screen and (max-width: 768px) {
section#ranking .shelf .unit { margin-bottom: 1.1rem; background-position: left 4rem; background-size: contain;}
section#ranking .shelf .unit h3 { line-height: 4rem; font-size: 1.4rem; margin-bottom: 7.5rem;}
section#ranking .shelf .unit.no-image h3 { margin-bottom: 0.5rem;}
section#ranking .shelf .unit h3 span { display: inline-block; width: 3.6rem; height: 4.7rem; line-height: 4.7rem; font-size: 1.8rem; margin: -0.3rem 1rem 0 -0.3rem;}
section#ranking .shelf .unit > div { padding: 0 1.1rem 1.1rem; }
section#ranking .shelf .unit > div div.box { background-size: 2.85rem auto; background-position: 1rem center; min-height: 7rem;}
section#ranking .shelf .unit > div div.box:nth-of-type(1) { margin-bottom: 0.5rem;}
section#ranking .shelf .unit > div div.box p { font-size: 1rem; margin: 0 1.5rem 0 4.7rem;}
section#ranking .shelf .unit:nth-of-type(1) { background-image: url(../images/img1_1_sp.jpg);}
section#ranking .shelf .unit:nth-of-type(2) { background-image: url(../images/img1_2_sp.jpg);}
section#ranking .shelf .unit:nth-of-type(3) { background-image: url(../images/img1_3_sp.jpg);}
}


/*
#section schedule
*/

section#schedule .shelf .unit { text-align: left;}
section#schedule .shelf .unit p.time { font-weight: 600;}
section#schedule .shelf .unit p.time span.en { font-weight: 400; margin-right: 0.5em;}
@media screen and (min-width: 769px) {
section#schedule { padding-top: 2rem;}
section#schedule hgroup { margin-bottom: 3.25rem}
section#schedule .shelf .unit { width: 38rem; margin: .6rem auto; display: grid; grid-template-columns: 34% 24% 34%; grid-template-rows: 6.15rem; align-items: center; gap: 0 4%;}
section#schedule .shelf .unit p.time { font-size: 0.9rem; background-color: #f8f9f9; height: 5.5rem; display: grid; align-items: center; justify-content: cenrer; grid-column: 2 / 3; grid-row: 1 / 2;}
section#schedule .shelf .unit p.time > span { text-align: center;}
section#schedule .shelf .unit p.time span.en { margin-left: 0.5em;}
section#schedule .shelf .unit p.act { font-size: 0.7rem;  grid-row: 1 / 2;}
section#schedule .shelf .unit: { grid-row: 1 / 2;}
section#schedule .shelf .unit:nth-of-type(odd) p.act {  grid-column: 1 / 2;}
section#schedule .shelf .unit:nth-of-type(odd) figure { grid-column: 3 / 4;}
section#schedule .shelf .unit:nth-of-type(even) p.act {  grid-column: 3 / 4;}
section#schedule .shelf .unit:nth-of-type(even) figure { grid-column: 1 / 2;}
}
@media screen and (max-width: 768px) {
section#schedule .shelf { background-color: #f8f9f9;}
section#schedule .shelf .unit { padding-top: 1.5rem;}
section#schedule .shelf .unit p.time {  font-size: 1.1rem; margin: 0 1.9rem 0.5rem;}
section#schedule .shelf .unit p.time span.en { margin-right: 0.5em;}
section#schedule .shelf .unit p.act { font-size: 1rem; margin: 0 1.95rem 1.2rem;}
}

/*
#section interview
*/
section#interview .unit { border-top: 0.1rem solid var(--text-color); text-align: left;}
section#interview .unit:last-child { border-bottom: 0.1rem solid var(--text-color);}
section#interview .unit div.box { display: flex; align-items: center; box-sizing: border-box;}
section#interview .unit div.box figure { aspect-ratio: 1 / 1; position: relative;}
section#interview .unit div.box figure::before { content: ""; width: 100%; height: 100%; display: block; background-color: #f8f9f9; border-radius: 50%; position: absolute; left: 10%;}
section#interview .unit:nth-of-type(odd) div.box figure::before { top: 10%;}
section#interview .unit:nth-of-type(even) div.box figure::before { top: -10%;}
section#interview div.box figure img { width: 100%; position: absolute; left: 0; top: 0;}
section#interview div.box .text-area p { line-height: 1.3; margin-bottom: 0.3em;}
section#interview div.box .text-area p:nth-child(-n+2) { font-weight: 500;}
section#interview div.box .text-area p:nth-child(3) { margin: 0.5em 0 1.1em; }
section#interview div.box .text-area p:nth-child(4) { text-indent: -0.6em; }

section .qa p { text-align: justify; }
section .qa .q { font-weight: 600;}
section .qa .q  span {  vertical-align: middle;}
section .qa .q span:nth-of-type(1),
section .qa .a span { font-family: "futura-pt", sans-serif; font-weight: 800;}

section#interview .qa a.q { background-color: #f8f9f9; position: relative; display: flex; align-items: center;}
section#interview .qa a.q::after { content: ""; display: block; position: absolute; transition: all ease .5s; background-image: url(../images/arrow.svg); background-size: contain; background-repat: no-repeat;}
section#interview .qa p { overflow: hidden;}
section#interview .qa.close p.a { height: 0;}
section#interview .qa.open p.a { height: auto;}
section#interview .qa.open a.q::after {transform: rotate(-180deg);}
@media screen and (min-width: 769px) {
section#interview .contents { box-sizing: border-box; padding-left: 4rem; padding-right: 4rem;}
section#interview .unit { padding: 2rem 0 3.2rem;}
section#interview div.box { justify-content: space-between; margin-bottom: 2rem;}
section#interview div.box figure { width: 25.2%; margin-left: 2.8rem;}
section#interview div.box .text-area { width: 59.2%;}
section#interview div.box .text-area p:nth-child(-n+2) { display: inline; font-size: 0.9rem; margin-right: 1em; margin-bottom: 0;}
section#interview div.box .text-area p:nth-child(n+3) { font-size: 0.7rem;  margin-top: 1.5em;}
section#interview div.box .text-area p:nth-child(3) { margin-top: 0.5em;}

section .qa span { display: inline-block;}
section .qa .q { font-size: .9rem;}
section .qa .q span:nth-of-type(1) { font-size: 1.1rem; margin-top: 0.2rem; margin-right: 0.5em;}
section .qa .a { font-size: 0.7rem;}
section .qa .a span { font-size: 0.9rem;  margin-right: 0.25em;}

section#interview .qa a.q { min-height: 3.6rem; margin: 1rem 0; padding: 0 2.8rem 0 1.95rem;}
section#interview .qa p { padding: 0 1.95rem 0; box-sizing: border-box;}
section#interview .qa a span { line-height: 1.4;}
section#interview .qa a.q::after { width: 1.7rem; height: 1.7rem; right: 0.85rem; top: 0.9rem;}
}
@media screen and (max-width: 768px) {
section#interview { padding-left: 0; padding-right: 0;}
section#interview .contents { padding-left: 2.05rem; padding-right: 2.05rem;}
section#interview .unit { padding: 2rem 0 3.2rem;}
section#interview div.box { justify-content: space-between; margin-bottom: 2rem;}
section#interview div.box figure { width: 40%; }
section#interview div.box .text-area { width: 50%;}
section#interview div.box .text-area p { font-size: 1.1rem; }
section#interview div.box .text-area p:nth-child(n+3) { font-size: 1rem;}

section .qa span { display: inline-block;}
section .qa .q { font-size: 1.1rem;}
section .qa .q span:nth-of-type(1) { font-size: 1.3rem; margin-top: 0.2rem; margin-right: 0.5em;}
section .qa .a { font-size: 1rem;}
section .qa .a span { font-size: 1.15rem;  margin-right: 0.25em;}

section#interview .qa a.q { width: calc(100% - 5.5rem); min-height: 5.65rem; margin: 1rem 0; padding: 0 4.4rem 0 1.1rem;}
section#interview .qa p { padding: 0 1.1rem 0; box-sizing: border-box;}
section#interview .qa a span { line-height: 1.4;}
section#interview .qa a.q::after { width: 3rem; height: 3rem; right: 0.85rem; top: 1.32rem;}
}

/*
#section q-and-a
*/
section#q-and-a .qa .a { background-color:  #f8f9f9;}
@media screen and (min-width: 769px) {
section#q-and-a { padding-top: 0;}
section#q-and-a.contents { box-sizing: border-box; padding-left: 4rem; padding-right: 4rem;}
section#q-and-a .qa .q { padding: 0 2rem 0 4rem; line-height: 1.2;}
section#q-and-a .qa .q span { text-indent: -2rem; margin-right: 0;  margin-bottom: 0.27rem;}
section#q-and-a .qa .a { margin: 1.3rem 0 2.4rem; padding: 1rem 2rem 1.2rem;}
section#q-and-a .qa .a span { margin-top: 0.25rem;}
}
@media screen and (max-width: 768px) {
section#q-and-a .qa .q { padding: 0 1.1rem 0 3rem; line-height: 1.2;}
section#q-and-a .qa .q span { text-indent: -2rem; margin-right: 0;  margin-bottom: 0.27rem;}
section#q-and-a .qa .a { margin: 1.3rem 0 2.4rem; padding: 1rem 1.1rem 1.2rem;}
section#q-and-a .qa .a span { margin-top: 0.25rem;}
}

#footer { color: #fff; background-size: cover;}
@media screen and (min-width: 769px) {
#footer { background-image: url(../images/foot.jpg); aspect-ratio: 2788 / 1188; margin-top: 2.5rem;}
#footer figure { width: 15rem; padding-top: 20.5rem; margin: 0 auto;}
#footer p { font-size: .7rem; margin: 1rem 0 2rem;}
#footer p a { color: #fff; margin: 0 0.3em;}
}
@media screen and (max-width: 768px) {
#footer { background-image: url(../images/foot_sp.jpg); aspect-ratio: 1283 / 641; margin-top: 2.5rem;}
#footer figure { width: 66.1%; padding-top: 6.25rem; margin: 0 auto;}
#footer p { font-size: .85rem; margin: 1.1rem 0 2.8rem;}
#footer p a { color: #fff; margin: 0 0.3em;}

}