@charset "UTF-8";

/* Resetting */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, button {
	border: 0;
	font-size:100%;
	font: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, main,hgroup, menu, nav, section {
	display: block;
}

html {
	font-size:16px;
	scroll-padding-top:115px !important;
}
body {
	color:#000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight:300;
	line-height:1;
	background:#fff;
  margin:0;
  position: relative;
}
body.nos {
	overflow:hidden;
}
body > div {
  visibility: hidden;
}

ol,ul,li{
	list-style: none;
}

sup {
	font-size:70%;
	vertical-align:super;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: inherit;
	border-spacing: 0;
}
input, textarea {
  font-family: "Noto Sans JP", sans-serif;
}
input[type="submit"],
input[type="button"],
input[type="reset"] {
	appearance:button;
	border:none;
	border-radius:0;
	box-sizing:border-box;
	cursor:pointer;
	-webkit-appearance:button;
}
input[type="text"],
textarea, select, button {
	appearance:none;
	border:none;
	border-radius:0;
	box-sizing:border-box;
	-webkit-appearance:none;
	background:none;
}

a{
	color:#333;
	text-decoration: none;
	outline: none;
}
a:focus, *:focus {outline:none;}
a.tel_link {
	pointer-events:none;
}
*{
	box-sizing:border-box;
}
img {
	width:auto;
	max-width:100%;
  display:block;
}

.sp {
  display:none !important;
}
.ta-r {
	text-align:right;
}
.ibk {
	display:inline-block;
}
.twocol {
	width:100%;
	display:flex;
}
.sp_braed {
	display:none;
}
.han {
	font-family:"source-han-serif-japanese", serif;
	font-weight:500;
	font-style:normal;
}

#wrapper {
	padding-top:115px;
	position:relative;
  overflow: hidden;
}
.inner {
	max-width:1400px;
	margin:0 auto;
}
article > section {
	position: relative;
	visibility: visible;
}
article > section > * {
	position: relative;
	z-index: 1;
}

header {
	width:100%;
	height:115px;
	position: fixed;
	top:0;
	left:0;
	background:rgba(255,255,255,.9);
	z-index:10;
}
header .inner {
	width:100%;
	max-width:1920px;
	padding:23px 156px 0 40px;
	display:flex;
	justify-content: space-between;
	position: relative;
}
header .sns {
	display:flex;
	align-items:center;
	position: absolute;
	top:44px;
	right:38px;
}
header .sns a {
	width:25px;
	display: block;
	transition:ease .3s;
}
header .sns a:nth-child(2) {
	width:26px;
	margin-left:20px;
}
header h1.logo {
	width:256px;
}
header ul.gmenu {
  padding-top:4px;
	display: flex;
	justify-content:flex-end;
}
header ul.gmenu li {
	border-right:solid 1px #009672;
}
header ul.gmenu li a {
	color:#231815;
	font-size:21px;
	font-weight:600;
	line-height:1;
	letter-spacing:.16em;
	text-align: center;
  width:216px;
	padding:4px 0 8px;
	display: block;
  transition:.3s;
}
header ul.gmenu li:nth-child(2) a {
  letter-spacing:.24em;
}
header ul.gmenu li:nth-child(3) a {
  letter-spacing:.08em;
}
header ul.gmenu li:nth-child(5) a {
  letter-spacing:.02em;
}
header ul.gmenu li a .eng {
	color:#009672;
	font-size:78%;
	font-weight:700;
	text-align:center;
	letter-spacing:.04em !important;
	display:block;
	margin:0 0 15px;
}

footer {
  background:#fff;
}
footer .inner {
	max-width:1780px;
	padding:30px 20px;
	display:flex;
	align-items:flex-end;
	justify-content: space-between;
}
footer .logo {
	width:235px;
	margin:0 0 10px;
}
footer .left p {
	font-size:22px;
	font-weight:400;
	line-height:1.34;
	margin:20px 0 0;
}
footer .right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
footer .right h3 {
	font-size:16px;
	font-weight:400;
	line-height:1;
	margin:25px 0 0;
}
footer .right p {
	font-size:16px;
	font-weight:400;
	line-height:1.3;
	letter-spacing:.02em;
	margin:25px 0 0;
}
footer .right p a {
	text-decoration:underline;
}
footer .sns {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
footer .sns a {
	width:41px;
	display: block;
	transition:ease .3s;
}
footer .sns a:nth-child(2) {
	width:42px;
	margin-left:20px;
}
footer .copyright {
	padding:30px 15px;
	background:#4c4948;
}
footer .copyright p {
	color:#fff;
	font-size:19px;
	font-weight:600;
	line-height:1;
	text-align: center;
}
.remodal-overlay, .remodal-wrapper {
  visibility: visible !important;
}
.remodal-wrapper {
  padding:30px 30px 0;
}
.remodal-overlay {
  background:rgba(0,0,0,.9);
}
.remodal {
  color:#000;
  max-width:1200px;
  padding:80px;
}
.remodal-close {
  top:30px;
  left:auto;
  right:30px;
  width:20px;
  height:20px;
  transition:ease .3s;
  font-size:0;
}
.remodal-close:before,
.remodal-close:after {
  content:"";
  font-size:0;
  line-height:1;
  width:100%;
  height:2px;
  display:block;
  background:#000;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) rotate(45deg);
}
.remodal-close:after {
  transform:translate(-50%,-50%) rotate(-45deg);
}

.sen_bg {
  pointer-events:none;
  position:absolute;
  z-index:0;
  top:0;
  width:88%;
  left:0;
}
.sen_bg svg {
  position: absolute;
  top:0;
  left:0;
}

#sen_bg01 {
	width:100%;
  height:100%;
  display: block;
  overflow: visible;
}
#sen_bg01sen,
#sen_bg01mask path {
  fill:none;
  stroke:#009672;
  stroke-miterlimit:10;
  stroke-width:3px;
	stroke-dasharray:21375px;
  stroke-dashoffset:21375px;
}
#sen_bg01mask path {
  stroke:#fff;
  stroke-dasharray:5;
}

.sen_bg01 {
  width:2038px !important;
	height:10655px;
  position: absolute;
	top:0;
  left:calc(50% - .31vw);
	transform: translateX(-50%);
  z-index:-1;
}
#sen_bg01_sp {
  display:none !important;
}

@media only screen and (max-width:1920px) {
.sen_bg01 {
	width:102% !important;
	height:554.94vw;
	left:1.25vw;
	transform:none;
}

}

.kv {
	position: relative;
}
.kv .image img {
	width:100%;
	max-width:none;
}
.kv .text {
	width:34.114vw;
	height:34.27vw;
	background:#009e71;
	position:absolute;
	top:6.51vw;
	left:6.25vw;
	overflow: visible;
}
.kv .text h2 {
	color:#fff;
	font-size:2.448vw;
	font-weight:600;
	line-height:2.089;
	letter-spacing:.06em;
	position: absolute;
	top:4.4vw;
	left:4.4vw;
}
.kv .text .image {
	width:38.95vw;
	position: absolute;
	top:19.79vw;
	left:1.77vw;
}
#kvsenbg {
  width:100%;
  height:100%;
  display:block;
}
#kvsen,
#kvsenmask path {
  fill:none;
  stroke:#fff;
  stroke-miterlimit:10;
  stroke-width:3px;
}
#kvsen {
  stroke-dasharray: 930;
  stroke-dashoffset: 930;
}
#kvsenmask path {
  stroke:#fff;
  stroke-dasharray:4.67;
  stroke-dashoffset:0;
}
.kv .text .kvlogo {
	width:15.1vw;
	position: absolute;
	bottom:4.16vw;
	left:4.94vw;
}

.contents {
	position: relative;
	padding-bottom:1px;
}
.cv_partner {
	width:100%;
	max-width:2454px;
	position:absolute;
	top:0;
	left:50%;
	z-index:9;
	transform: translateX(-50%);
	transition: ease .5s;
}
.cv_partner a {
	width:234px;
	display: block;
	position: absolute;
	top:0;
	right:30px;
	transform: translateY(-50%);
}
.cv_partner a img {
	transition:ease .3s;
}
#sec_cv.cv_partner,
.fixhead .cv_partner {
	position: fixed;
	top:auto;
	bottom:30px;
}
#sec_cv.cv_partner a,
.fixhead .cv_partner a {
	transform: translateY(-100%);
}
.cv_partner.ftposi {
	position: absolute !important;
	top:auto !important;
	bottom: 30px !important;
}
.cv_partner.ftposi a {
	transform: translateY(-100%) !important;
}

.lead {
	padding:30px 0 60px;
	background:#fff;
}
.lead p {
	font-size:40px;
	line-height:2.08;
	letter-spacing:.14em;
	text-align: center;
}

h2.secttl {
	color:#009672;
	font-size:29px;
	font-weight:600;
	line-height:1;
	letter-spacing:.04em;
	text-align:center;
}
h2.secttl .han {
	color:#000;
	font-size:50px;
	font-weight:600;
	text-align: center;
	letter-spacing:.04em;
	margin:25px 0 0;
	display: block;
}
.about {
	margin:35px 0 0;
}
.about ul li {
	width:100%;
	margin:150px 0 0;
	display:flex;
	align-items: center;
}
.about ul li:nth-child(1) {
	margin-top:70px;
}
.about ul li .image {
	margin:0 0 0 100px;
}
.about ul li:nth-child(even) {
	flex-direction: row-reverse;
}
.about ul li:nth-child(even) .image {
	margin:0 100px 0 0;
}
.about ul li .text {
	padding-left:30px;
}
.about ul li:nth-child(even) .text {
	padding-left:0;
}
.about ul li .text h3 {
	color:#009672;
	font-size:53px;
	font-weight:600;
	letter-spacing:.04em;
	line-height:1;
	white-space: nowrap;
	width:fit-content;
	padding:0 0 18px;
	background:url(../images/underline.png) repeat-x 0 bottom;
	background-size:auto 3px;
}
.about ul li .text h3 .han {
	font-size:40px;
	margin-left:.5em;
	display: inline-block;
}
.about ul li .text h4 {
	font-size:47px;
	letter-spacing:.04em;
	line-height:1.76;
  white-space: nowrap;
	margin:30px 0;
	padding:0;
}
.about ul li .text p {
	font-size:26px;
	letter-spacing:.06em;
	line-height:2.08;
  text-align:justify;
	white-space:nowrap;
}
.about .thoughts {
  max-width:1360px;
	padding:45px 60px 55px 45px;
	margin:110px auto 0;
	border:solid 1px #009672;
	border-radius:40px;
	background:#fff;
}
.about .thoughts .twocol {
	align-items: flex-end;
}
.about .thoughts .image {
	width:173px;
	min-width:173px;
	margin-right:45px;
}
.about .thoughts h3 {
	color:#009672;
	font-size:32px;
	font-weight:500;
	line-height:1;
	letter-spacing:.04em;
	width:fit-content;
	padding:0 0 10px;
	border-bottom:solid 1px #009672;
}
.about .thoughts p {
	font-size:26px;
  font-weight:400;
	line-height:1.53;
	letter-spacing:.1em;
  text-align:justify;
	margin:25px 0 0;
}

.activities {
	margin:200px 0 0;
}
.activities ul {
	width:100%;
	padding:0 66px;
	display:flex;
	flex-wrap: wrap;
	justify-content:space-between;
}
.activities ul li {
	width:calc(50% - 66px);
	margin:75px 0 0;
  background:rgba(255,255,255,1);
}
.activities ul li:nth-child(1),
.activities ul li:nth-child(2) {
	margin-top:70px;
}
.activities ul li p {
	font-size:35px;
	line-height:1.457;
	letter-spacing:.08em;
	text-align: center;
	margin:25px 0 0;
}

.project {
	margin:200px 0 120px;
}
.project .inner {
	max-width:1680px;
}
#projectpage.project .inner {
	max-width:none;
}
.project ul {
	width:100%;
	max-width:1680px;
	margin:85px auto 0;
	display:flex;
	justify-content:center;
  background:rgba(255,255,255,1);
}
.project ul li {
	width:calc(33.33% - 76px);
	margin:0 38px;
	padding:0 0 25px;
	position: relative;
}
.project ul li::before {
	content:"";
	width:1px;
	height:100%;
	background:#000;
	position: absolute;
	top:0;
	left:-38px;
}
.project ul li:nth-child(1)::before {
	display: none;
}
.project ul li a {
	display: block;
  transition:ease .3s;
}
.project ul li h3 {
	color:#109078;
	font-size:29px;
  font-weight:500;
	line-height:1.8;
	letter-spacing:.02em;
	margin:35px 13px 0;
}
.project ul li h3 .cate {
	display: inline-block;
	padding:0 0 5px;
	border-bottom:solid 2px #109078;
}
.project ul li p {
	color:#109078;
	font-size:27px;
  font-weight:500;
	line-height:1;
	letter-spacing:0;
	margin:40px 13px 0;
}
.project ul li .image {
  overflow: hidden;
  border-radius:30px;
}
.project ul li a .image img {
  transition:ease .3s;
  transform: scale(1);
}
.project .btn {
	margin-top:100px;
}

.btn {
	width:490px;
	margin:0 auto;
}
.btn a {
	color:#000;
	font-size:30px;
	font-weight:400;
	line-height:1;
	text-align:center;
	padding:22px 10px;
	display:block;
	background:#fff;
	border:solid 1px #000;
	border-radius:35px;
	position: relative;
	transition: ease .3s;
}
.btn a::before {
	content:"";
	width:23px;
	height:30px;
	background:url(../images/link_arrow.png) no-repeat 0 0;
	background-size:100% auto;
	position: absolute;
	top:50%;
	right:25px;
	transform: translateY(-50%);
}

.message {
	background:url(../../images/message_img.jpg) no-repeat 0 0;
	background-size: cover;
}
.message .inner {
	max-width:none;
	padding:2.08vw 6.25vw 1px;
	position: relative;
}
.message h2 .msgttl {
	position: relative;
}
.message h2 .msgttl::before,
.message h2 .msgttl::after {
	content:"";
	width:calc(50% - 4.7em);
	height:1px;
	background:#009672;
	position: absolute;
	top:50%;
	left:0;
	transform: translateY(-50%);
}
.message h2 .msgttl::after {
	left:auto;
	right:0;
}

.message .sign {
	position: absolute;
	top:19vw;
	right:7.2vw;
}
.message .sign .image {
	width:6.77vw;
	margin:0 auto;
}
.message .sign h3 {
	font-size:1.3vw;
	font-weight:400;
	line-height:1;
	letter-spacing:-.02em;
	text-align: center;
	white-space:nowrap;
	margin:1.82vw 0 0;
}
.message .sign h3 .riji {
  display: inline-block;
  margin-left:.5em;
}
.message .sign h4 {
	font-size:1.56vw;
	font-weight:400;
	line-height:1;
	letter-spacing:-.02em;
	text-align: center;
	white-space:nowrap;
	margin:.52vw 0 0;
}
.message .sign h4 .eng {
	font-size:1.3vw;
  display: inline-block;
  margin-left:.5em;
}
.message .text {
	padding:4.42vw 0 0;
}
.message .text p {
	font-size:1.45vw;
	font-weight:500;
	line-height:1.85;
	letter-spacing:.08em;
  text-align:justify;
	margin:0 0 3.38vw;
}

.recruitment {
	margin:65px 0 85px;
}
.recruitment h3 {
	color:#0f9079;
	font-size:36px;
	font-weight:500;
	line-height:1.47;
	letter-spacing:.12em;
	text-align: center;
}
.recruitment .btn {
	margin:26px auto 40px;
}
.recruitment .btn a {
	color:#fff;
	background:#0f9079;
	border:solid 1px #0f9079;
}
.recruitment .btn a::before {
	background-image:url(../images/link_arrow_w.png);
}
.recruitment p {
	font-size:27px;
	font-weight:500;
	line-height:1;
	text-align: center;
	margin:40px 0 0;
}
.recruitment p a {
	color:#0f9079;
  padding-bottom:.4em;
	display: inline-block;
  position: relative;
}
.recruitment p a::before {
  content:"";
  width:100%;
  height:1.5px;
  background:#0f9079;
  display: block;
  position: absolute;
  left:0;
  bottom:0;
}

.news .inner {
	padding:0 20px;
	display: flex;
	justify-content: space-between;
}
.news .media {
	width:calc(50% - 20px);
	padding:38px 35px 30px;
	background:#fffaf2;
}
.news .media h2.secttl {
	font-size:26px;
	text-align: left;
}
.news .media h2.secttl .han {
	font-size:42px;
  font-weight:500;
	letter-spacing:0;
	text-align: left;
}
.news .media ul li {
	margin:70px 0 0;
	padding:0 0 15px;
	border-bottom:solid 2px #0f9079;
}
.news .media ul li:nth-child(1) {
	margin-top:60px;
}
.news .media ul li a {
	display: block;
	transition:ease .3s;
}
.news .media ul li a.nolink {
	pointer-events:none;
	text-decoration: none !important;
}
.news .media ul li .hd {
	display: flex;
	align-items: center;
}
.news .media ul li .hd .cate {
	color:#fff;
	font-size:22px;
	font-weight:500;
	line-height:1;
	white-space: nowrap;
	text-align: center;
	width:130px;
	padding:12px 0 14px;
	margin-right:20px;
	background:#0f9079;
	border-radius:10px;
}
.news .media ul li .hd .cate.catinterview {
	letter-spacing:-.16em;
}
.news .media ul li .hd .date {
	color:#0f9079;
	font-size:25px;
	font-weight:500;
	line-height:48px;
}
.news .media ul li a p {
	color:#000;
	font-size:27px;
  font-weight:400;
	line-height:1.45;
	letter-spacing:.02em;
  text-align:justify;
	min-height:4.35em;
	margin:15px 0 0;
	display: flex;
	align-items: center;
	transition:ease .3s;
}
.news .media ul li a[target="_blank"] p span::after {
	content:"";
	width:27px;
	height:27px;
	display: inline-block;
	background:url(../images/icon_blank.png) no-repeat 0 0;
	background-size:100% auto;
	position:relative;
	top:2px;
}
.news .media h3 {
	font-size:28px;
	font-weight:400;
	line-height:1.2;
	letter-spacing:0;
	text-align: right;
	margin:45px 0 0;
}
.news .media h3 a {
	text-decoration: none;
	padding:0 52px 0 0;
	display: inline-block;
	background:url(../images/link_arrow.png) no-repeat right 0 center;
	background-size:20px auto;
}

.qa {
	margin:170px 0 0;
}
.qa .inner {
	max-width:1100px;
	padding:0 20px 60px;
}
.qa ul {
	margin:70px 0 0;
}
.qa ul li {
	margin:60px 0 0;
	border:solid 2px #009672;
	border-radius:50px;
	background:#fff;
	transition:ease .15s;
}
.qa ul li.open {
	border-radius:25px;
}
.qa ul li h3 {
	font-size:32px;
	font-weight:500;
	line-height:1;
	letter-spacing:.04em;
	text-align: center;
	padding:33px 20px;
	position: relative;
	cursor: pointer;
}
.qa ul li h3::before {
	content:"";
	width:25px;
	height:25px;
	background:url(../images/icon_plus.png) no-repeat 0 0;
	background-size:100% auto;
	position: absolute;
	top:50%;
	right:30px;
	transform: translateY(-50%);
	transition:ease .15s;
}
.qa ul li.open h3::before {
	transform: translateY(-50%) rotate(45deg);
}
.qa_con {
	display:none;
}
.qa ul li .qa_con {
	padding:30px 40px;
	margin:0 20px;
	border-top:solid 2px #009672;
}
.qa ul li .qa_con p {
	font-size:32px;
	font-weight:400;
	line-height:2;
	letter-spacing:.04em;
  text-align:justify;
	position: relative;
	cursor: pointer;
}
.qa ul li .qa_con p.chushaku {
  font-size:29px;
  line-height:1.7;
  margin:.2em 0 0;
}
.qa ul li .qa_con p.link {
	font-size:29px;
	font-weight:500;
	text-align: right;
}
.qa ul li .qa_con p.link a {
	color:#009672;
	padding:0 36px 0 0;
	display: inline-block;
	background:url(../images/link_arrow_g.png) no-repeat right 0 center;
	background-size:auto 29px;
	text-decoration:none;
}
.qa ul li .qa_con p a.txtlink {
  color:#009672;
	padding:0;
  display:inline-block;
  position:relative;
}
.qa ul li .qa_con p a.txtlink::before {
  content:"";
  width:100%;
  height:1px;
  background:#009672;
  display:block;
  position:absolute;
  bottom:.2em;
  left:0;
}

.partner {
	margin:30px 0 220px;
}
.partner .inner {
	max-width:1440px;
  padding: 60px 0;
  background:#fff;
}
.partner ul {
	display: flex;
	flex-wrap: wrap;
  justify-content: center;
  align-items: center;
	margin:40px 0 0;
}
.partner ul li {
	margin:80px 45px 0;
}
.partner ul li:nth-child(1),
.partner ul li:nth-child(2),
.partner ul li:nth-child(3),
.partner ul li:nth-child(4) {
  margin-top:0;
}
.partner ul li.sunstar {
  width:278px;
  min-width:278px;
}
.partner ul li.sports_depo {
  width:295px;
  min-width:295px;
}
.partner ul li.inego {
  width:116px;
  min-width:116px;
}


/* ニュース */
#newspage.news,
#mediapage.news {
  margin:0;
	padding:100px 0 200px;
  background:#fffaf1;
}
#newspage.news .inner,
#mediapage.news .inner {
	max-width:1420px;
	display: block;
}
#newspage.news .media,
#mediapage.news .media {
	width:100%;
	padding:0;
	background:none;
}
#newspage.news h2.secttl,
#mediapage.news h2.secttl {
	line-height:1.3;
}
#newspage.news .media h2.secttl,
#newspage.news .media h2.secttl .han,
#mediapage.news .media h2.secttl,
#mediapage.news .media h2.secttl .han {
	text-align:center;
}
#newspage.news .media ul li,
#mediapage.news .media ul li {
	margin:60px 0 0;
	padding:0 0 30px;
}
#newspage.news .media ul li:nth-child(1),
#mediapage.news .media ul li:nth-child(1) {
	margin-top:60px;
}
#newspage.news .media ul li a p,
#mediapage.news .media ul li a p {
	min-height:inherit;
	margin:20px 0 0;
}

.news_contents {
	max-width:1340px;
	margin:160px auto 0;
	padding:0 20px;
}
.news_contents h3,
.remodal h4 {
	font-size:54px;
	font-weight:500;
	line-height:1.4;
	letter-spacing:.08em;
	text-align: center;
	width:fit-content;
	margin:0 auto 60px;
	padding:0 0 25px;
	border-bottom:solid 2px #109078;
}
.news_contents p,
.remodal p {
	font-size:27px;
  font-weight:400;
	line-height:2.29;
	letter-spacing:.08em;
  text-align: left;
	margin:60px 0 0;
}


/* プロジェクト */
#projectpage.project {
	margin:100px 0 200px;
}
#projectpage.project ul {
	flex-wrap: wrap;
}
#projectpage.project ul li {
	padding-top:85px;
}
#projectpage.project ul li:nth-child(1),
#projectpage.project ul li:nth-child(2),
#projectpage.project ul li:nth-child(3) {
	padding-top:0;
}
#projectpage.project ul li:nth-child(3n-2)::before {
	display: none;
}

.pro_title {
	max-width:1100px;
	padding:0 20px;
	margin:80px auto 35px;
}
.pro_title h3 {
	color:#109078;
	font-size:32px;
	font-weight:500;
	line-height:70px;
}
.pro_title h3 .group {
	font-size:30px;
	font-weight:600;
	line-height:68px;
	letter-spacing:.1em;
	text-align: center;
	width:246px;
	margin-right:22px;
	border:solid 2px #109078;
	border-radius:36px;
	display: inline-block;
	box-sizing: border-box;
}
.pro_title h4 {
	color:#109078;
	font-size:32px;
	font-weight:500;
	line-height:1;
	letter-spacing:.02em;
	margin:20px 0 0;
}
.pro_title h4 .cate {
	display: inline-block;
	margin-left:1em;
}
.report_contents {
	max-width:1100px;
	padding:0 20px;
	margin:80px auto 100px;
}
.report_contents h3 {
  font-family:"source-han-serif-japanese", serif;
	font-size:51px;
	font-weight:600;
  font-style:normal;
	line-height:1.64;
	text-align: center;
}
.report_contents h3 .mini {
  font-size:70%;
}
.report_contents h4 {
  font-family:"source-han-serif-japanese", serif;
	font-size:35px;
  font-style:normal;
	text-align:center;
	display: block;
	margin:20px 0 0;
  padding:0 0 50px;
	border-bottom:solid 3px #109078;
}
.report_contents p {
	font-size:32px;
	font-weight:300;
	line-height:2.37;
  text-align:justify;
	margin:35px 0 0;
}
.report_contents figure {
	margin:45px 0;
  display:block;
  overflow:hidden;
  border-radius:30px;
}
.report_contents figure + p {
	margin-top:65px;
}

/* PARTNER */
#partnerpage {
	background:#fffaf1;
}
.partner_kv {
	position: relative;
}
.partner_kv .text {
	width:100%;
	position: absolute;
	top:10.15vw;
	left:50%;
	transform: translateX(-50%);
}
.partner_kv .text h3 {
	color:#fff;
	font-size:29px;
	font-weight:600;
	letter-spacing:.04em;
	line-height:1;
	text-align: center;
	text-shadow: 3px 3px 6px rgba(4, 0, 0, 0.6);
	margin:0;
}
.partner_kv .text h2 {
	color:#fff;
	font-size:54px;
	font-weight:400;
	letter-spacing:.04em;
	line-height:1;
	text-align: center;
	text-shadow: 3px 3px 6px rgba(4, 0, 0, 0.6);
	margin:30px 0 0;
}
.partner_kv .kv_cv {
	width:222px;
	position: absolute;
	top:30px;
	right:30px;
}

.partner_lead {
	padding:80px 0 140px;
}
.partner_lead .inner,
.partner_menu .inner {
	max-width:1100px;
	padding:0 20px;
	margin:0 auto;
}
.partner_lead p {
	font-size:34px;
	line-height:2.33;
  letter-spacing:.11em;
}
.partner_lead .partner_mean {
	margin:100px 0 0;
	padding:60px 125px 90px;
	position:relative;
}
.partner_lead .partner_mean::before,
.partner_lead .partner_mean::after {
	content:"";
	width:98px;
	height:144px;
	display:block;
	background:url(../../partner/images/kakko.png) no-repeat 0 0;
	background-size:100% auto;
	position: absolute;
	top:0;
	left:0;
}
.partner_lead .partner_mean::after {
	top:auto;
	left:auto;
	bottom:0;
	right:0;
	transform: rotate(180deg);
}
.partner_lead .partner_mean h3 {
	font-size:47px;
	font-weight:600;
	line-height:1.98;
	letter-spacing:.08em;
	margin:0 0 50px;
}
.partner_lead .partner_mean h3 .st {
	color:#109078;
}
.partner_lead .partner_mean p,
.partner_lead .partner_mean ul li {
	font-size:34px;
	line-height:2.35;
	letter-spacing:.03em;
	margin:0;
}
.partner_lead .partner_mean ul li {
	color:#109078;
	font-weight:700;
	padding-left:.8em;
	position:relative;
}
.partner_lead .partner_mean ul li::before {
	content:"";
	width:20px;
	height:20px;
	display:block;
	background:#109078;
	position:absolute;
	top:.9em;
	left:0;
	border-radius:10px;
}

.partner_menu {
	padding:0;
}
.partner_menu h2 {
	font-size:52px;
	font-weight:600;
	line-height:1.3;
	letter-spacing:.08em;
	text-align: center;
	margin:0 0 35px;
}
.partner_menu .tokuten {
	margin:60px 0 0;
	background:#fff;
	border:solid 1px #009672;
}
.partner_menu .tokuten h3 {
	color:#fff;
	font-size:40px;
	font-weight:600;
	line-height:1.4;
	letter-spacing:.08em;
	width:100%;
	height:90px;
	margin:0;
	background:#009672;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.partner_menu .tokuten h3.lsp {
  letter-spacing:-.02em;
}
.partner_menu .tokuten h3 .num {
	font-size:76px;
	font-weight:300;
	letter-spacing:.12em;
	position: absolute;
	top:47%;
	left:42px;
	transform: translateY(-50%);
}
.partner_menu .tokuten p {
	font-size:32px;
	line-height:1.65;
  letter-spacing:.1em;
  font-weight:400;
	padding:30px 70px;
}
.partner_menu h2 + .tokuten p,
.partner_menu .tokuten p .nowrap {
	white-space: nowrap;
}
.partner_menu .tokuten p .mini {
	font-size:80%;
  letter-spacing:.02em;
}
.partner_plan {
	padding:50px 70px 70px;
	margin:70px 0 0;
	background:#fff;
	border:solid 1px #009672;
	border-radius:30px;
}
.partner_plan h3 {
	font-size:47px;
	font-weight:600;
	line-height:1;
	letter-spacing:.12em;
	text-align: center;
	width:fit-content;
	margin:0 auto 50px;
	padding:0 0 30px;
	border-bottom:solid 2px #009672;
}
.partner_plan .twocol {
	justify-content:center;
	align-items: center;
}
.partner_plan h4 {
	color:#109078;
	font-size:38px;
	font-weight:600;
	line-height:1;
	letter-spacing:.02em;
	margin:0 32px 0 0;
}
.partner_plan h5 {
	color:#109078;
	font-size:50px;
	font-weight:600;
	line-height:1;
	letter-spacing:.02em;
	display: flex;
	align-items: flex-end;
}
.partner_plan h5 .en {
	font-size:70%;
}
.partner_plan h5 .year {
	color:#fff;
	font-size:30px;
	font-weight:600;
	line-height:44px;
	padding:0 30px;
	margin:0 15px 0 0;
	display: inline-block;
	background:#109078;
	border-radius:15px;
}
.partner_plan h6 {
	color:#109078;
	font-size:35px;
	font-weight:600;
	line-height:1;
	margin:75px 0 40px;
	position: relative;
}
.partner_plan h6::after {
	content:"";
	width:calc(100% - 5.5em);
	height:2px;
	background:#109078;
	position: absolute;
	top:50%;
	right:0;
}
.partner_plan p {
	font-size:31px;
  font-weight:400;
	line-height:1.7;
	letter-spacing:.06em;
	margin:0 0 25px;
}
.partner_plan p.chushaku {
	font-size:24px;
	line-height:1.33;
	letter-spacing:.06em;
	margin:0;
}
.partner_message {
	margin:95px 0 75px;
	padding:0 0 60px;
	background:url(../images/underline.png) repeat-x 0 bottom;
	background-size:auto 2px;
}
.partner_message h3 {
	color:#109078;
	font-size:39px;
	font-weight:600;
	line-height:1;
	text-align: center;
	letter-spacing:.02em;
	margin:0 0 50px;
	position: relative;
}
.partner_message h3::before,
.partner_message h3::after {
	content:"";
	width:calc(50% - 4.5em);
	height:2px;
	display: block;
	position:absolute;
	top:50%;
	left:0;
	transform: translateY(-50%);
	background:url(../images/underline.png) repeat-x 0 0;
	background-size:auto 2px;
}
.partner_message h3::after {
	left:auto;
	right:0;
}
.partner_message p {
	font-size:30px;
  font-weight:400;
	line-height:2;
	letter-spacing:.02em;
	text-align: center;
	margin:0;
	position: relative;
}
.partner_message p .nspace {
  margin-left:.7em;
  display:inline-block;
}
.partner_message .image {
	width:100px;
	position: absolute;
	bottom:25px;
	right:95px;
}
.partner_footer {
	margin:0 0 10px;
	background:#009672;
}
.partner_footer .inner {
	padding:60px 0 70px;
}
.partner_footer h2 {
	color:#fff;
	font-size:42px;
	font-weight:700;
	line-height:1;
	letter-spacing:.04em;
  text-align: center;
  width:fit-content;
  margin:0 auto 60px;
	padding-bottom:20px;
	border-bottom:solid 2px #fff;
}
.partner_footer .twocol {
	justify-content: center;
	align-items: center;
}
.partner_footer .twocol ul {
	margin-right:110px;
}
.partner_footer .twocol ul li {
	color:#fff;
	font-size:31px;
	font-weight:400;
	line-height:1.66;
	letter-spacing:.02em;
	padding-left:1em;
	margin:5px 0 0;
	position: relative;
}
.partner_footer .twocol ul li:nth-child(1) {
	margin:0;
}
.partner_footer .twocol ul li::before {
	content:"";
	width:17px;
	height:17px;
	display:block;
	background:#fff;
	border-radius:9px;
	position: absolute;
	top:.6em;
	left:0;
}
.partner_footer .button a {
  color:#fff;
	font-size:30px;
  font-weight:400;
	line-height:66px;
	text-align: center;
	width:490px;
	height:71px;
	padding:0 22px 0 0;
	margin:0;
  display: block;
	border:solid 2px #fff;
	border-radius:36px;
  background:url(../images/link_arrow_w.png) no-repeat right 20px center #009672;
	background-size:22px auto;
  transition:ease .3s;
}
.partner_footer .button a:nth-child(2) {
  color:#109078;
	margin:30px 0 0;
  background:url(../images/link_arrow_g.png) no-repeat right 20px center #fff;
	background-size:22px auto;
}


@media only screen and (max-width:1920px) {
html {
	scroll-padding-top:5.99vw !important;
}
#wrapper {
	padding-top:5.99vw;
}

header {
	height:5.99vw;
}
header .inner {
	padding:1.19vw 8.12vw 0 2.08vw;
}
header .sns {
	top:2.29vw;
	right:1.98vw;
}
header .sns a {
	width:1.3vw;
}
header .sns a:nth-child(2) {
	width:1.35vw;
	margin-left:1.04vw;
}
header h1.logo {
	width:13.33vw;
}
header ul.gmenu {
  padding-top:.2vw;
}
header ul.gmenu li a {
	font-size:1.09vw;
  width:11.25vw;
  padding:.2vw 0 .41vw;
}
header ul.gmenu li a .eng {
	margin:0 0 .78vw;
}

footer .inner {
  max-width:92.7vw;
	padding:1.56vw 1.04vw;
}
footer .logo {
	width:12.23vw;
	margin:0 0 .52vw;
}
footer .left p {
	font-size:1.14vw;
	margin:1.04vw 0 0;
}
footer .right h3 {
	font-size:.83vw;
	margin:1.3vw 0 0;
}
footer .right p {
	font-size:.83vw;
	margin:1.3vw 0 0;
}
footer .sns a {
	width:2.13vw;
}
footer .sns a:nth-child(2) {
	width:2.18vw;
	margin-left:1.04vw;
}
footer .copyright {
	padding:1.56vw .78vw;
}
footer .copyright p {
	font-size:.98vw;
}
.remodal-wrapper {
  padding:1.56vw 1.56vw 0;
}
.remodal {
  padding:4.16vw;
}
.remodal-close {
  top:1.56vw;
  right:1.56vw;
}

.inner {
	max-width:72.91vw;
}

.cv_partner a {
	width:12.18vw;
	right:1.56vw;
}
#sec_cv.cv_partner,
.fixhead .cv_partner {
	bottom:1.56vw;
}
.cv_partner.ftposi {
	bottom: 1.56vw !important;
}

.lead {
	padding:1.56vw 0 3.12vw;
}
.lead p {
	font-size:2.08vw;
}

h2.secttl {
	font-size:1.51vw;
}
h2.secttl .han {
	font-size:2.6vw;
	margin:1.3vw 0 0;
}
.about {
	margin:1.82vw 0 0;
}
.about ul li {
	margin:7.81vw 0 0;
}
.about ul li:nth-child(1) {
	margin-top:3.64vw;
}
.about ul li .text {
	padding-left:1.56vw;
}
.about ul li .image {
	margin:0 0 0 5.2vw;
}
.about ul li:nth-child(even) .image {
	margin:0 5.2vw 0 0;
}
.about ul li .text h3 {
	font-size:2.76vw;
	padding:0 0 .93vw;
}
.about ul li .text h3 .han {
	font-size:2.08vw;
}
.about ul li .text h4 {
	font-size:2.44vw;
	margin:1.56vw 0;
}
.about ul li .text p {
	font-size:1.35vw;
}
.about .thoughts {
  width:70.83vw;
	padding:2.34vw 3.12vw 2.86vw 2.34vw;
	margin:5.73vw auto 0;
	border-radius:2.08vw;
}
.about .thoughts .image {
	width:9.01vw;
	min-width:9.01vw;
	margin-right:2.34vw;
}
.about .thoughts h3 {
	font-size:1.66vw;
	padding:0 0 .52vw;
}
.about .thoughts p {
	font-size:1.35vw;
	margin:1.3vw 0 0;
}

.activities {
	margin:10.41vw 0 0;
}
.activities ul {
	padding:0 3.43vw;
}
.activities ul li {
	width:calc(50% - 3.43vw);
	margin:3.9vw 0 0;
}
.activities ul li:nth-child(1),
.activities ul li:nth-child(2) {
	margin-top:3.64vw;
}
.activities ul li p {
	font-size:1.82vw;
	margin:1.3vw 0 0;
}

.project {
	margin:10.41vw 0 6.25vw;
}
.project .inner {
	max-width:87.5vw;
  margin-left:auto;
  margin-right:auto;
}
.project ul {
	margin:4.42vw auto 0;
}
.project ul li {
	width:calc(33.33% - 3.96vw);
	margin:0 1.98vw;
	padding:0 0 1.3vw;
}
.project ul li::before {
	left:-1.98vw;
}
.project ul li h3 {
	font-size:1.51vw;
	margin:1.82vw .67vw 0;
}
.project ul li h3 .cate {
	padding:0 0 .26vw;
}
.project ul li p {
	font-size:1.4vw;
	margin:2.08vw .67vw 0;
}
.project ul li .image {
  border-radius:1.56vw;
}
.project .btn {
	margin-top:5.2vw;
}

.btn {
	width:25.52vw;
}
.btn a {
	font-size:1.56vw;
	padding:1.14vw .52vw;
	border-radius:1.82vw;
}
.btn a::before {
	width:1.19vw;
	height:1.56vw;
	right:1.3vw;
}

.recruitment {
	margin:3.38vw 0 4.42vw;
}
.recruitment h3 {
	font-size:1.87vw;
}
.recruitment .btn {
	margin:1.35vw auto 2.08vw;
}
.recruitment p {
	font-size:1.4vw;
	margin:2.08vw 0 0;
}

.news .inner {
	padding:0 1.04vw;
}
.news .media {
	width:calc(50% - 1.04vw);
	padding:1.98vw 1.82vw 1.56vw;
}
.news .media h2.secttl {
	font-size:1.35vw;
}
.news .media h2.secttl .han {
	font-size:2.18vw;
}
.news .media ul li {
	margin:3.64vw 0 0;
	padding:0 0 .78vw;
}
.news .media ul li:nth-child(1) {
	margin-top:3.12vw;
}
.news .media ul li .hd .cate {
	font-size:1.14vw;
	width:6.77vw;
  min-width:6.77vw;
	padding:.62vw 0 .72vw;
	margin-right:1.04vw;
	border-radius:.52vw;
}
.news .media ul li .hd .date {
	font-size:1.3vw;
	line-height:2.5vw;
}
.news .media ul li a p {
	font-size:1.4vw;
	margin:.78vw 0 0;
}
.news .media ul li a[target="_blank"] p span::after {
	width:1.4vw;
	height:1.4vw;
	top:.104vw;
}
.news .media h3 {
	font-size:1.45vw;
	margin:2.34vw 0 0;
}
.news .media h3 a {
	padding:0 2.7vw 0 0;
	background-size:1.04vw auto;
}

.qa {
	margin:8.94vw 0 0;
}
.qa .inner {
  max-width:57.29vw;
	padding:0 1.04vw 3.12vw;
}
.qa ul {
	margin:3.64vw 0 0;
}
.qa ul li {
	margin:3.12vw 0 0;
	border-radius:2.6vw;
}
.qa ul li.open {
	border-radius:1.3vw;
}
.qa ul li h3 {
	font-size:1.66vw;
	padding:1.71vw 1.04vw;
}
.qa ul li h3::before {
	width:1.3vw;
	height:1.3vw;
	right:1.56vw;
}
.qa ul li .qa_con {
	padding:1.56vw 2.08vw;
	margin:0 1.04vw;
}
.qa ul li .qa_con p {
	font-size:1.66vw;
}
.qa ul li .qa_con p.chushaku,
.qa ul li .qa_con p.link {
	font-size:1.51vw;
}
.qa ul li .qa_con p.link a {
	padding:0 1.87vw 0 0;
	background-size:auto 1.51vw;
}

.partner {
	margin:1.56vw 0 11.45vw;
}
.partner .inner {
  max-width:75vw;
  padding:3.125vw 0;
}
.partner ul {
	margin:2.08vw 0 0;
}
.partner ul li {
	margin:4.16vw 2.34vw 0;
}
.partner ul li.sunstar {
  width:14.47vw;
  min-width:14.47vw;
}
.partner ul li.sports_depo {
  width:15.36vw;
  min-width:15.36vw;
}
.partner ul li.inego {
  width:6.04vw;
  min-width:6.04vw;
}


/* ニュース */
#newspage.news,
#mediapage.news {
	padding:5.2vw 0 10.4vw;
}
#newspage.news .inner,
#mediapage.news .inner {
  max-width:73.95vw;
	padding:0 1.04vw;
}
#newspage.news .media ul li,
#mediapage.news .media ul li {
	margin:3.12vw 0 0;
	padding:0 0 1.56vw;
}
#newspage.news .media ul li:nth-child(1),
#mediapage.news .media ul li:nth-child(1) {
	margin-top:3.12vw;
}
#newspage.news .media ul li a p,
#mediapage.news .media ul li a p {
	margin:1.04vw 0 0;
}

.news_contents {
	margin:8.33vw auto 0;
	padding:0 20px;
}
.news_contents h3,
.remodal h4 {
	font-size:2.81vw;
	margin:0 auto 3.12vw;
	padding:0 0 1.3vw;
}
.news_contents p,
.remodal p {
	font-size:1.4vw;
	margin:3.12vw 0 0;
}


/* プロジェクト */
#projectpage.project .inner {
	max-width:87.5vw;
  margin-left:auto;
  margin-right:auto;
}
#projectpage.project .inner.fullwidth {
  max-width: none;
}
#projectpage.project {
	margin:5.2vw 0 10.41vw;
}
#projectpage.project ul li {
	padding-top:4.42vw;
}
.pro_title {
  max-width:57.29vw;
	padding:0 1.04vw;
	margin:4.16vw auto 1.82vw;
}
.pro_title h3 {
	font-size:1.66vw;
	line-height:3.64vw;
}
.pro_title h3 .group {
	font-size:1.56vw;
	line-height:3.54vw;
	width:12.81vw;
	margin-right:1.14vw;
	border-radius:1.87vw;
}
.pro_title h4 {
	font-size:1.66vw;
	margin:1.04vw 0 0;
}
.report_contents {
  max-width:57.29vw;
	padding:0 20px;
	margin:4.16vw auto 5.2vw;
}
.report_contents h3 {
	font-size:2.65vw;
}
.report_contents h4 {
  font-size:1.82vw;
	margin:1.04vw 0 0;
  padding:0 0 2.6vw;
	border-bottom:solid 3px #109078;
}
.report_contents p {
	font-size:1.66vw;
	margin:1.82vw 0 0;
}
.report_contents figure {
	margin:2.34vw 0;
  border-radius:1.56vw;
}
.report_contents figure + p {
	margin-top:3.38vw;
}


/* PARTNER */
.partner_kv .kv_cv {
	width:11.56vw;
	top:1.56vw;
	right:1.56vw;
}
.partner_kv .text h3 {
	font-size:1.51vw;
	text-shadow: .15vw .15vw .3vw rgba(4, 0, 0, 0.6);
}
.partner_kv .text h2 {
	font-size:2.81vw;
	text-shadow: .15vw .15vw .3vw rgba(4, 0, 0, 0.6);
	margin:1.56vw 0 0;
}
.partner_lead {
	padding:4.16vw 0 7.29vw;
}
.partner_lead .inner,
.partner_menu .inner {
	max-width:57.29vw;
	padding:0 1.04vw;
}
.partner_lead p {
	font-size:1.77vw;
}
.partner_lead .partner_mean {
	margin:5.2vw 0 0;
	padding:3.125vw 6.51vw 4.68vw;
}
.partner_lead .partner_mean::before,
.partner_lead .partner_mean::after {
	width:5.1vw;
	height:7.5vw;
}
.partner_lead .partner_mean h3 {
	font-size:2.44vw;
	margin:0 0 2.6vw;
}
.partner_lead .partner_mean p,
.partner_lead .partner_mean ul li {
	font-size:1.77vw;
}
.partner_lead .partner_mean ul li::before {
	width:1.04vw;
	height:1.04vw;
	border-radius:.52vw;
}
.partner_menu h2 {
	font-size:2.7vw;
	margin:0 0 1.82vw;
}
.partner_menu .tokuten {
	margin:3.12vw 0 0;
}
.partner_menu .tokuten h3 {
	font-size:2.08vw;
	height:6.25vw;
  min-height:6.25vw;
}
.partner_menu .tokuten h3 .num {
	font-size:3.95vw;
	left:2.18vw;
}
.partner_menu .tokuten p {
	font-size:1.66vw;
	padding:1.56vw 3.64vw;
}
.partner_plan {
	padding:2.6vw 3.64vw 3.64vw;
	margin:3.64vw 0 0;
	border-radius:1.56vw;
}
.partner_plan h3 {
	font-size:2.44vw;
	margin:0 auto 2.6vw;
	padding:0 0 1.56vw;
}
.partner_plan h4 {
	font-size:1.979vw;
	margin:0 1.66vw 0 0;
}
.partner_plan h5 {
	font-size:2.6vw;
}
.partner_plan h5 .year {
	font-size:1.56vw;
	line-height:2.29vw;
	padding:0 1.56vw;
	margin:0 .78vw 0 0;
	border-radius:.78vw;
}
.partner_plan h6 {
	font-size:1.82vw;
	margin:3.9vw 0 2.08vw;
}
.partner_plan p {
	font-size:1.61vw;
	margin:0 0 1.3vw;
}
.partner_plan p.chushaku {
	font-size:1.25vw;
}
.partner_message {
	margin:4.94vw 0 3.9vw;
	padding:0 0 3.12vw;
}
.partner_message h3 {
	font-size:2.03vw;
	margin:0 0 2.6vw;
}
.partner_message p {
	font-size:1.56vw;
}
.partner_message .image {
	width:5.208vw;
	bottom:1.3vw;
	right:4.94vw;
}
.partner_footer {
	margin:0 0 .52vw;
}
.partner_footer .inner {
	padding:3.12vw 0 3.64vw;
}
.partner_footer h2 {
	font-size:2.18vw;
  margin:0 auto 3.12vw;
	padding-bottom:1.04vw;
}
.partner_footer .twocol ul {
	margin-right:5.72vw;
}
.partner_footer .twocol ul li {
	font-size:1.61vw;
	margin:.26vw 0 0;
}
.partner_footer .twocol ul li::before {
	width:.88vw;
	height:.88vw;
	border-radius:.44vw;
}
.partner_footer .button a {
	font-size:1.56vw;
	line-height:3.43vw;
	width:25.52vw;
	height:3.69vw;
	padding:0 1.14vw 0 0;
	border-radius:1.87vw;
  background:url(../images/link_arrow_w.png) no-repeat right 1.04vw center #009672;
	background-size:1.14vw auto;
}
.partner_footer .button a:nth-child(2) {
	margin:1.56vw 0 0;
  background:url(../images/link_arrow_g.png) no-repeat right 1.04vw center #fff;
	background-size:1.14vw auto;
}


}


@media only screen and (max-width:780px) {
.pc {
  display:none !important;
}
.sp {
  display:block !important;
}
html {
	scroll-padding-top:20.35vw !important;
}
#wrapper {
	padding-top:20.35vw;
	overflow-x: hidden;
}
#wrapper.toppage,
#wrapper.projectpages {
  padding-bottom:17.81vw;
}

header {
	height:20.35vw;
}
header .inner {
	padding:0;
}
header h1.logo {
	width:38.07vw;
	position: absolute;
	top:5vw;
	left:7.3vw;
	z-index:1;
}
header ul.gmenu {
  padding-top:0;
}
#spmenu {
	width:20.35vw;
	height:20.35vw;
	position: absolute;
	top:0;
	right:0;
	z-index:5;
}
#spmenu a {
	width:100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#spmenu a .icon {
	color:#000;
	font-size:3.56vw;
	font-weight:400;
	line-height:1;
	letter-spacing:.02em;
	text-align: center;
	padding:0 0 4.87vw;
	display: block;
	position: relative;
}
#spmenu a .icon::before,
#spmenu a .icon::after {
	content:"";
	width:100%;
	height:1px;
	background:#009672;
	position: absolute;
	left:50%;
	transform:translate(-50%, 0);
	transition:ease .5s;
}
#spmenu a .icon::before {
	bottom:2.43vw;
}
#spmenu a .icon::after {
	bottom:0;
}
#spmenu a.on .icon::before {
	bottom:0vw;
	transform:translate(-50%, 0) rotate(30deg);
}
#spmenu a.on .icon::after {
	transform:translate(-50%, 0) rotate(-30deg);
}
.spinner {
	padding:12.3vw 0 8.2vw;
}
#spnavi {
	width:100vw;
	height:100vh;
	overflow-y: auto;
	position:fixed;
	top:0;
	right:0;
	transform: translateX(101%);
	background:#fff;
	z-index:2;
	transition:ease .5s;
}
header.open #spnavi {
	transform: translateX(0%);
}
#spnavi::before {
	content:"";
	width:150vw;
	height:150vh;
	position:fixed;
	top:50%;
	left:50%;
	transform: translate(-50%,-50%);
	background:#fff;
	z-index:-1;
}
#spnavi .gmenu {
	width:75.12vw;
	margin:0 auto;
	display: block;
}
#spnavi ul.gmenu li {
	margin-top:10.25vw;
	padding-bottom:5.12vw;
	border-right:0;
	background:url(../images/underline.png) repeat-x left 0 bottom 0;
	background-size:auto 2px;
}
#spnavi ul.gmenu li a {
	font-size:5.12vw;
  letter-spacing:.1em !important;
	text-align:left;
  width:auto;
	padding:0;
}
#spnavi ul.gmenu li a .eng {
	font-size:3.33vw;
	text-align:left;
	margin:0 0 2.56vw;
}
#spnavi .sns {
	width:75.82vw;
	margin:0 auto;
	padding:9.23vw 0;
	align-items:flex-start;
	position:relative;
	top:0;
	right:0;
}
#spnavi .sns a {
	width:6.28vw;
}
#spnavi .sns a:nth-child(2) {
	width:6.56vw;
	margin-left:5.12vw;
}
#spnavi .sp_btn {
	width:75.12vw;
	margin:0 auto;
}
#spnavi .sp_btn a {
	color:#fff;
	font-size:4.83vw;
	font-weight:600;
	text-align: center;
	padding:3.9vw 0 4.1vw;
	display:block;
	background: #009e71;
}
#spnavi .spmenu_ft p {
	font-size:4.07vw;
  font-weight:400;
	line-height:1;
	text-align: center;
	margin:5.12vw 0 0;
}
#spnavi .spmenu_ft p a {
	color:#109078;
  display:inline-block;
	padding-bottom:1.52vw;
  position: relative;
}
#spnavi .spmenu_ft p a::before {
  content:"";
  width:100%;
  height:1px;
  background:#109078;
  display:block;
  position:absolute;
  left:0;
  bottom:0;
}
#spnavi .splogo {
	width:39.48vw;
	margin:10.25vw auto 0;
}

footer .inner {
  max-width:none;
	padding:0;
	display: block;
}
footer .left {
	padding:3.81vw 0 8vw 7.63vw;
	background:#fff;
}
footer .logo {
	width:41.53vw;
	margin:0 0 3.84vw;
}
footer .left p {
	font-size:3.8vw;
	line-height:1.4;
	letter-spacing:-.02em;
	margin:1.91vw 0 0;
}
footer .sns {
	position: absolute;
	top:-11.53vw;
	right:7.05vw;
}
footer .sns a {
	width:7.43vw;
}
footer .sns a:nth-child(2) {
	width:7.82vw;
	margin-left:3.84vw;
}
footer .right {
	padding:5.12vw 7.05vw 0;
	background:#4b4948;
	position: relative;
	display: block;
}
footer .right h3 {
	color:#fff;
	font-size:3.56vw;
	text-align:left;
	margin:0;
}
footer .right h3 a {
  color:#fff;
}
footer .right p {
	color:#fff;
	font-size:3.56vw;
	line-height:1.48;
	letter-spacing:0;
	margin:2.56vw 0 0;
}
footer .right p a {
	color:#fff ;
}
footer .copyright {
	padding:6.41vw 0 3.84vw;
	background:#4b4948;
}
footer .copyright p {
	font-size:3.56vw;
}
.remodal-wrapper {
  padding:2.55vw 2.55vw 0;
}
.remodal {
  padding:7.63vw;
}
.remodal-close {
  top:3.05vw;
  right:3.05vw;
  width:3.05vw;
  height:3.05vw;
}
.remodal-close:before,
.remodal-close:after {
  height:.33vw;
}
.inner {
  max-width: none;
}
#kvsen,
#kvsenmask path {
  stroke-width:5px;
}
#sen_bg01_sp {
	width:100%;
  height:100%;
  display: block !important;
  overflow: visible;
}
#sen_bg01sen_sp,
#sen_bg01mask_sp path {
  fill:none;
  stroke:#009672;
	stroke-width:2px;
  stroke-miterlimit:10;
	stroke-dasharray:18700px;
  stroke-dashoffset:18700px;
}
#sen_bg01mask_sp path {
  stroke:#fff;
  stroke-dasharray:2.22;
}
.sen_bg01 {
  width:219.01vw !important;
	height:auto !important;
  position: absolute;
  top:0;
  left:auto;
	right:-26.2vw;
  transform:none;
  z-index:-1;
}
#sen_bg01 {
  display:none !important;
}

.kv .text {
	width:58.52vw;
	height:58.77vw;
	background:#009e71;
	top:auto;
	bottom:20.35vw;
	left:7.63vw;
}
.kv .text h2 {
	font-size:4.35vw;
	font-weight:400;
	line-height:2.05;
	letter-spacing:.08em;
	top:7vw;
	left:7.63vw;
}
.kv .text .image {
	width:66.92vw;
	top:33.97vw;
	left:2.94vw;
}
.kv .text .kvlogo {
	width:25.89vw;
	bottom:7.3vw;
	left:8.46vw;
}

.cv_partner {
	top:0;
}
.cv_partner a {
	color:#fff;
	font-size:4.32vw;
	font-weight:600;
	letter-spacing:.06em;
	width:100%;
	height:12.72vw;
	right:0;
	transform:none;
	background: url(../images/link_arrow_w.png) no-repeat right 4.32vw center #009e71;
	background-size:3.3vw auto;
	display: flex;
	justify-content: center;
	align-items: center;
  transform: translateY(-100%);
  transition:ease .3s;
}
#sec_cv.cv_partner,
.fixhead .cv_partner {
	position: fixed;
	top:auto;
	bottom:0;
}
#sec_cv.cv_partner a,
.fixhead .cv_partner a {
	transform: translateY(-100%);
}
.fixhead .cv_partner a {
  height:17.81vw;
}
.cv_partner.ftposi {
	position: absolute !important;
	top:auto !important;
	bottom: 0 !important;
}
.cv_partner.ftposi a {
	transform: translateY(-100%) !important;
}
#sec_cv.cv_partner,
.fixhead .cv_partner {
	bottom:0;
}
.cv_partner.ftposi {
  position: fixed !important;
	bottom: 0 !important;
}

.lead {
	padding:10.68vw 0 17.94vw;
	background:transparent;
}
.lead p {
	font-size:4.07vw;
}

h2.secttl {
	font-size:4.07vw;
  background:rgba(255,255,255,1);
}
h2.secttl .han {
	font-size:6.36vw;
  font-weight:600;
	margin:2.6vw 0 0;
}
.about {
	margin:0;
}
.about h2.secttl {
	background:transparent;
}
.about ul li {
	margin:22.98vw 0 0;
	display: block;
	background:transparent;
}
.about ul li:nth-child(1) {
	margin-top:8.87vw;
}
.about ul li .text,
.about ul li:nth-child(even) .text {
	padding:2.66vw 2.66vw 0;
	margin:0 7.19vw;
	background:#fff;
}
.about ul li:nth-child(3),
.about ul li:nth-child(3) .text {
	background:transparent;
}
.about ul li .image {
	margin:6.41vw 10vw 0 0;
}
.about ul li:nth-child(even) .image {
	margin:6.41vw 0 0 10vw;
}
.about ul li .text h3 {
	font-size:4.07vw;
	width:100%;
	padding:0 0 2.56vw;
	background-size:auto .53vw;
}
.about ul li .text h3 .han {
	font-size:3.56vw;
  font-weight:600;
}
.about ul li .text h4 {
	font-size:5.6vw;
  font-weight:600;
	margin:5.12vw 0;
}
.about ul li .text p {
	font-size:3.44vw;
  font-weight:600;
	letter-spacing:0;
}
.about .thoughts {
  width:auto;
	padding:8.33vw 8vw;
	margin:11.53vw 7.05vw 0;
	border-radius:8vw;
}
.about .thoughts .twocol {
	display: block;
}
.about .thoughts .image {
	width:21.02vw;
	min-width:21.02vw;
	margin:0 auto 8.97vw;
}
.about .thoughts h3 {
	font-size:5.34vw;
	padding:0 0 2.3vw;
	margin:0 auto;
  border-bottom: solid .534vw #009672;
}
.about .thoughts p {
	font-size:3.84vw;
  line-height:2.14;
	margin:6.41vw 0 0;
}

.activities {
	margin:11.53vw 0 0;
}
.activities h2.secttl {
	background:transparent;
}
.activities ul {
	margin:0;
	padding:0;
	display: block;
}
.activities ul li {
	width:76.41vw;
	margin:7.69vw auto 0;
	background:transparent;
}
.activities ul li:nth-child(1),
.activities ul li:nth-child(2) {
	margin-top:7.69vw;
}
.activities ul li p {
	font-size:4.83vw;
	letter-spacing:0;
	margin:3.84vw 0 0;
}

.project {
	margin:32.05vw 0 0;
}
.project .inner,
#projectpage.project .inner {
	max-width:none;
}
.project h2.secttl {
  background:transparent;
}
.project ul {
	padding:0 7.05vw;
	margin:0;
	display: block;
  background:transparent;
}
.project ul li {
	width:100%;
	margin:6.66vw 0 0;
	padding:0;
}
.project ul li::before {
	display:none;
}
.project ul li a {
	width:100%;
	display: flex;
	align-items: center;
}
.project ul li:nth-child(even) a {
	flex-direction: row-reverse;
}
.project ul li a .image {
	width:40.76vw;
	min-width:40.76vw;
	margin:0 3.84vw 0 0;
}
.project ul li:nth-child(even) a .image {
	margin:0 0 0 3.84vw;
}
.project ul li a .text {
	width:100%;
	display: flex;
	flex-direction: column-reverse;
}
.project ul li h3 {
	font-size:3.74vw;
  line-height:1.6;
	margin:3.84vw 0 0;
}
.project ul li p {
	font-size:3.74vw;
	margin:0;
}
.project ul li .image {
  border-radius:4vw;
}
.project .btn {
	margin-top:8.9vw;
}

.btn {
	width:74.35vw;
}
.btn a {
	font-size:3.81vw;
	padding:3.2vw 2vw 3.46vw;
	border-radius:10.25vw;
}
.btn a::before {
	width:3.33vw;
	height:4.61vw;
	right:3.2vw;
}

.message {
	margin-top:26.54vw;
	background:none;
}
.message .spbg {
	height:80.38vw;
	padding:3.84vw 0 5.76vw;
	background: url(../../images/message_img_sp.jpg) no-repeat 0 0;
  background-size: cover;
	position: relative;
}
.message .inner {
	padding:0;
}
.message h2.secttl {
  background:none;
}
.message h2.secttl .han {
	font-size:5.12vw;
}
.message .sign {
	top:auto;
	bottom:5.51vw;
	right:auto;
	left:7.84vw;
}
.message .sign .image {
	width:15.4vw;
}
.message .sign h3 {
	font-size:3.47vw;
  font-weight:500;
	line-height:1.4;
	margin:3.84vw 0 0;
}
.message .sign h3 .riji,
.message .sign h4 .eng {
	display: block;
	text-align: left;
  margin:0;
}
.message .sign h4 {
	font-size:4.5vw;
  font-weight:500;
	line-height:1.4;
	text-align: left;
	margin:0;
}
.message .sign h4 .eng {
	font-size:3.47vw;
}
.message .text {
	padding:2.56vw 7.05vw 0 ;
}
.message .text p {
	font-size:3.58vw;
  line-height:2.21;
  letter-spacing:0;
	margin:0;
	padding:6.41vw 0 0;
  background:#fff;
}
.message .text p:nth-child(1) {
	margin:6.41vw 0 0;
	padding:0;
}

.recruitment {
	margin:10.25vw 0;
  background:transparent;
}
.recruitment h3 {
	font-size:4.58vw;
  line-height:1.61;
  letter-spacing:0;
}
.recruitment .btn {
	margin:3.84vw auto;
}
.recruitment p {
	font-size:3.46vw;
	margin:0;
}

.news .inner {
  max-width: none;
	padding:0 7.63vw;
	display: block;
}
.news .media {
	width:auto;
	padding:5.12vw 5.76vw;
}
.news .media + .media {
	margin-top:8.33vw;
}
.news .media h2.secttl {
	font-size:3.58vw;
  background:none;
}
.news .media h2.secttl .han {
	font-size:4.83vw;
}
#newspage.news h2.secttl {
  background:none;
}
.news .media ul li {
	margin:7.69vw 0 0;
	padding:0 0 3.2vw;
  border-bottom: solid 1px #0f9079;
}
.news .media ul li:nth-child(1) {
	margin-top:7.05vw;
}
.news .media ul li .hd .cate {
	font-size:3.07vw;
	width:17.94vw;
	padding:1.28vw 0;
	margin-right:1.92vw;
	border-radius:1.28vw;
}
.news .media ul li .hd .date {
	font-size:3.58vw;
	line-height:5.62vw;
}
.news .media ul li a p {
	font-size:3.33vw;
  line-height:1.53;
	margin:2vw 0 0;
}
.news .media ul li a[target="_blank"] p span::after {
	width:3.46vw;
	height:3.46vw;
	top:.38vw;
}
.news .media h3 {
	font-size:3.84vw;
	margin:4.8vw 0 0;
}
.news .media h3 a {
	padding:0 6.92vw 0 0;
	background-size:2.56vw auto;
}

.qa {
	margin:14.1vw 0 0;
}
.qa .inner {
  max-width: none;
	margin:0 10.89vw 6vw;
	padding:0 0 2.66vw;
	background:#fff;
}
.qa ul {
	margin:6.41vw 0 0;
}
.qa ul li {
	margin:3.46vw 0 0;
  border:solid 1px #009672;
	border-radius:16vw;
}
.qa ul li.open {
	border-radius:5.12vw;
}
.qa ul li h3 {
	font-size:3.58vw;
	line-height:1.3;
	padding:3.84vw 2.33vw;
}
.qa ul li h3.smltxt {
  padding-right:7.33vw;
  letter-spacing:-.04em;
}
.qa ul li h3::before {
	width:3.46vw;
	height:3.46vw;
	right:4.48vw;
}
.qa ul li .qa_con {
	padding:3.2vw 0;
	margin:0 3.2vw;
  border-top: solid 1px #009672;
}
.qa ul li .qa_con p,
.qa ul li .qa_con p.chushaku,
.qa ul li .qa_con p.link {
	font-size:3.2vw;
}
.qa ul li .qa_con p.link a {
	padding:0 6.92vw 0 0;
	background-size:2.56vw auto;
}

.partner {
	margin:7.77vw 0 22.2vw;
}
.partner .inner {
  max-width: none;
  padding:6vw 0;
}
.partner ul {
	width:100%;
	margin:6.66vw 0 0;
}
.partner ul li,
.partner ul li:nth-child(1),
.partner ul li:nth-child(2),
.partner ul li:nth-child(3),
.partner ul li:nth-child(4) {
	margin:8vw 6.66vw 0;
}
.partner ul li.sunstar {
  width:33.75vw;
  min-width:33.75vw;
}
.partner ul li.sports_depo {
  width:35.79vw;
  min-width:35.79vw;
}
.partner ul li.inego {
  width:14.07vw;
  min-width:14.07vw;
}

/* ニュース */
#newspage.news,
#mediapage.news {
	padding:8vw 0 13.33vw;
}
#newspage.news .inner,
#mediapage.news .inner {
  max-width:none;
	padding:0 12.82vw;
}
#newspage.news .media ul li,
#mediapage.news .media ul li {
	margin:7.69vw 0 0;
	padding:0 0 3.84vw;
}
#newspage.news .media ul li:nth-child(1),
#mediapage.news .media ul li:nth-child(1) {
	margin-top:9.33vw;
}
#newspage.news .media ul li a p,
#mediapage.news .media ul li a p {
	margin:2.56vw 0 0;
}

.news_contents {
	margin:16.66vw auto 0;
	padding:0;
}
.news_contents h3,
.remodal h4 {
	font-size:6.41vw;
	text-align: center;
	width:auto;
	margin:0 auto 6.41vw;
	padding:0 0 5.12vw;
}
.news_contents p,
.remodal p {
	font-size:3.58vw;
	margin:3.81vw 0 0;
}


/* プロジェクト */
#projectpage.project {
	margin:10.41vw 0 26.66vw;
}
#projectpage.project ul {
	padding:0 11.53vw;
}
#projectpage.project ul li {
	padding-top:0;
	margin-top:8.97vw;
}
#projectpage.project ul li a {
	display: block;
}
#projectpage.project ul li a .image {
	width:auto;
	min-width:inherit;
	margin: 0 auto;
}
#projectpage.project ul li a .text {
	padding:5.12vw 2.56vw 0;
  display:block;
}
#projectpage.project ul li h3 {
	font-size:4.61vw;
	line-height:1.66;
	margin:0;
}
.project ul li h3 .cate {
	border-bottom:solid .27vw #109078;
}
#projectpage.project ul li h3 .cate {
  padding: 0 0 .26vw;
}
#projectpage.project ul li p {
	font-size:3.2vw;
	margin:5.12vw 0 0;
}
.pro_title {
  max-width: none;
	padding:0 7.69vw;
	margin:10.25vw auto 3.84vw;
}
.pro_title h3 {
	font-size:3.58vw;
	line-height:8.7vw;
}
.pro_title h3 .group {
	font-size:3.33vw;
	line-height:8.2vw;
	width:29.48vw;
	margin-right:2.56vw;
  border:solid .27vw #109078;
	border-radius:4.1vw;
}
.pro_title h4 {
	font-size:3.58vw;
	margin:2.56vw 0 0;
}
.report_contents {
  max-width: none;
	padding:0 7.69vw;
	margin:5.12vw auto 8.97vw;
}
.report_contents h3 {
	font-size:4.87vw;
  margin:0;
}
.report_contents h4 {
  font-size:3.33vw;
	margin:2.56vw 0 3.81vw;
  padding:0 0 3.84vw;
	border-bottom:solid .38vw #109078;
}
.report_contents p {
	font-size:3.33vw;
  line-height:1.84;
	margin:1.84vw 0 0;
}
.report_contents figure {
	margin:5.12vw 0;
  border-radius:4vw;
}
.report_contents figure + p {
	margin-top:6.41vw;
}


/* PARTNER */
.partner_kv .kv_cv {
	display:none;
}
.partner_kv .text {
  top:7.69vw;
}
.partner_kv .text h3 {
	font-size:4.1vw;
	text-shadow: 1px 1px 2px rgba(4, 0, 0, 0.6);
}
.partner_kv .text h2 {
	font-size:5.89vw;
	line-height:1.43;
	text-shadow: 1px 1px 2px rgba(4, 0, 0, 0.6);
	margin:3.73vw 0 0;
}
.partner_lead .inner, .partner_menu .inner {
	padding:0 7.69vw;
}
.partner_lead {
	padding:7.69vw 0 10.25vw;
}
.partner_lead .inner,
.partner_menu .inner {
	max-width:none;
}
.partner_lead p {
	font-size:3.44vw;
	letter-spacing:.04em;
}
.partner_lead .partner_mean {
	margin:8.2vw 0 0;
	padding:6.66vw 6.15vw;
}
.partner_lead .partner_mean::before,
.partner_lead .partner_mean::after {
	width:9.23vw;
	height:13.58vw;
}
.partner_lead .partner_mean h3 {
	font-size:5.89vw;
	margin:0 0 2.56vw;
}
.partner_lead .partner_mean p,
.partner_lead .partner_mean ul li {
	font-size:3.44vw;
}
.partner_lead .partner_mean ul li::before {
	width:2.05vw;
	height:2.05vw;
	border-radius:1.025vw;
}
.partner_menu h2 {
	font-size:5.89vw;
	margin:0 0 5.12vw;
}
.partner_menu .tokuten {
	margin:5.12vw 0 0;
}
.partner_menu .tokuten h3 {
	font-size:4.35vw;
  font-weight:500;
	height:11.45vw;
  letter-spacing:.08em;
	padding-left:7.69vw;
	text-align: center;
}
.partner_menu .tokuten h3 .num {
	font-size:8.9vw;
	left:3.84vw;
}
.partner_menu .tokuten h3.lsp {
  height: 16.66vw;
}
.partner_menu .tokuten p {
	font-size:3.33vw;
  line-height:1.46;
  letter-spacing:.02em;
	padding:3.81vw;
}
.partner_menu h2 + .tokuten p,
.partner_menu .tokuten p .nowrap {
	white-space:normal;
}
.partner_menu .tokuten p .mini {
  line-height:1;
}
.partner_plan {
	padding:5.12vw 0;
	margin:6.41vw 0 0;
	border-radius:2.56vw;
}
.partner_plan h3 {
	font-size:5.89vw;
	margin:0 auto 5.12vw;
	padding:0 0 4.35vw;
  border-bottom:0;
  position: relative;
}
.partner_plan h3::after {
  content:"";
  width:12.05vw;
  height:1px;
  position: absolute;
  bottom:0;
  left:50%;
  transform: translateX(-50%);
  background: #109078;
}
.partner_plan .twocol {
	margin-left:7.69vw;
	justify-content: flex-start;
}
.partner_plan h4 {
	font-size:4.1vw;
	margin:0 4.1vw 0 0;
}
.partner_plan h5 {
	font-size:5.38vw;
}
.partner_plan h5 .year {
	font-size:3.68vw;
	line-height:5.56vw;
	padding:0 3.33vw;
	margin:0 2.05vw 0 0;
	border-radius:2.05vw;
}
.partner_plan h6 {
	font-size:4.1vw;
	margin:7.69vw 7.69vw 1.93vw;
}
.partner_plan h6::after {
  height:1px;
  width: calc(100% - 4.3em);
}
.partner_plan p {
	font-size:3.58vw;
  line-height:1.4;
	padding:0 7.69vw;
	margin:0 0 4.1vw;
}
.partner_plan p.chushaku {
	font-size:2.45vw;
	padding:0 3.84vw;
}
.partner_message {
	margin:12.82vw 0 8.97vw;
	padding:0 0 7.68vw;
	background:none;
}
.partner_message h3 {
	font-size:4.35vw;
  font-weight:400;
	margin:0 0 5.12vw;
}
.partner_message p {
	font-size:3.58vw;
  line-height:1.64;
	text-align: left;
}
.partner_message p .name {
	margin:2.56vw 0 0;
	display: inline-block;
}
.partner_message p .nspace {
  margin-left:0;
  display:inline;
}
.partner_message .image {
	width:15vw;
	bottom:-2.66vw;
	left:36vw;
}
.partner_footer {
	margin:0;
}
.partner_footer .inner {
	padding:7.63vw 0;
}
.partner_footer h2 {
	font-size:5.85vw;
  font-weight:600;
	line-height:1;
	text-align: center;
  letter-spacing:.02em;
  width:auto;
  margin:0;
	padding:0 0 6.41vw;
	border:0;
	position: relative;
}
.partner_footer h2::after {
	content:"";
	width:12.05vw;
	height:1px;
	position: absolute;
	bottom:0;
	left:50%;
	transform: translateX(-50%);
	background:#fff;
}
.partner_footer .twocol {
	display: block;
}
.partner_footer .twocol ul {
	width:fit-content;
	margin:6.36vw auto 0;
	display:flex;
	flex-direction:column;
}
.partner_footer .twocol ul li {
	font-size:4.1vw;
  letter-spacing:.06em;
	margin:1.28vw 0 0;
}
.partner_footer .twocol ul li::before {
	width:2.56vw;
	height:2.56vw;
	border-radius:1.28vw;
}
.partner_footer .button {
	margin:6.36vw auto 0;
	padding:0;
	display:flex;
  flex-direction:column-reverse;
}
.partner_footer .button a {
	font-size:3.81vw;
	line-height:10vw;
	width:73.79vw;
	height:10.94vw;
	padding:0;
	margin:3.81vw auto 0;
  border:solid 1px #fff;
	border-radius:5.64vw;
	display: block;
  background:url(../images/link_arrow_w.png) no-repeat right 2.56vw center #009672;
	background-size:3.58vw auto;
}
.partner_footer .button a:nth-child(2) {
	margin:0 auto;
  background:url(../images/link_arrow_g.png) no-repeat right 2.56vw center #fff;
	background-size:3.58vw auto;
}


}


@media only screen and (min-width:781px) {
body.nos {
	overflow:inherit;
}
#spnavi {
	display:block !important;
}
.spmenu_ft {
	display:none !important;
}

}


@media (hover: hover) {
header .sns a:hover,
footer .sns a:hover,
.btn a:hover,
.news .media ul li a:hover,
.cv_partner a:hover img,
header ul.gmenu li a:hover,
.partner_footer .button a:hover {
	opacity:.7;
}
.project ul li a:hover {
  opacity:.8;
}
footer .right p a:hover {
	text-decoration: none;
}
.qa ul li .qa_con p.link a:hover,
.news .media h3 a:hover,
.news .media ul li a:hover p {
	color:#0f9079;
	text-decoration: underline;
}
.qa ul li .qa_con p a:hover.txtlink::before {
  display:none;
}
.recruitment p a:hover::before {
  opacity:0;
}
.project ul li a:hover .image img {
  transform: scale(1.1);
}

}

/* 暫定措置（SNSアイコン非表示） */
header .sns a {
	display: none !important;
}
footer .sns a {
	display: none !important;
}

