@charset "utf-8";

/* **********************************************************
	common
********************************************************** */
h2 { text-align: center; margin-bottom: 5vw; }
h2 span { display: inline-block; font-size: 2.5vw; font-family: 'Roboto', sans-serif; font-weight: 700; line-height: 1.2; position: relative; padding-bottom: 0.83vw; }
h2 span:after { border-top: 0.3333vw solid #7e99a9; content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; }
@media (min-width: 1201px) {
	h2 { margin-bottom: 60px; }
	h2 span { font-size: 3.0rem; padding-bottom: 10px; }
	h2 span:after { border-top: 4px solid #7e99a9; }
}
@media (max-width: 768px) {
	h2 { text-align: center; margin-bottom: 9.37vw; }
	h2 span { display: inline-block; font-size: 7.81vw; font-family: 'Roboto', sans-serif; font-weight: 700; line-height: 1.2; position: relative; padding-bottom: 2.34vw; }
	h2 span:after { border-top: 1.25vw solid #7e99a9; content: ""; position: absolute; bottom: 0px; left: 0px; width: 100%; }
}


/* **********************************************************
	home__main
********************************************************** */
.home__main { background: url(/images/bg_main.jpg) center center no-repeat; background-size: cover; text-align: center; margin-bottom: 6.6666vw; padding: 4.5833vw 0 5.8333vw 0; }
.home__main h1 { font-size: 0; line-height: 0; }
.home__main h1 img { width: 28.4166vw; }
.home__main p { color: #ffffff; font-size: 1.3333vw; margin-top: 5.4166vw; }
.home__main p + p { margin-top: 1.6em; }
@media (min-width: 1201px) {
	.home__main { margin-bottom: 80px; padding: 55px 0 70px 0; }
	.home__main h1 img { width: 341px; }
	.home__main p { font-size: 1.6rem; margin-top: 65px; }
}
@media (max-width: 768px) {
.home__main { background: #000000 none; margin-bottom: 14.8437vw; padding: 0 0 12.5vw 0; }
.home__main h1 { background: url(/images/bg_main_sp.jpg) center center no-repeat; background-size: cover; padding: 12.5vw 0 13.75vw 0; }
.home__main h1 img { width: 44.6875vw; }
.home__main p { font-size: 3.75vw; text-align: left; margin-top: 7.8125vw; padding: 0 6.25vw; }
.home__main p + p { margin-top: 1.6em; }
}

/* **********************************************************
	home__topics
********************************************************** */
.home__topics { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 7.5vw; padding: 0 10vw; }
.home__topics ul { border-top: 1px solid #eeeeee; margin-bottom: 1.66vw; }
.home__topics li { border-bottom: 1px solid #eeeeee; }
.home__topics li dl { display: table; font-size: 1.16vw; width: 100%; }
.home__topics li dt { display: table-cell; vertical-align: top; width: 100%; padding: 1.25vw 0.83vw 1.25vw 1.25vw; width: 5em; white-space: nowrap; }
.home__topics li dd { display: table-cell; vertical-align: top; padding: 1.25vw 1.25vw 1.25vw 0.83vw; }
.home__topics p { font-size: 1.16vw; text-align: right; }
.home__topics p a { background: url(../common/images/arw_link_01.png) left center no-repeat; background-size: 0.5833vw auto; color: #333333; display: inline-block; text-decoration: none; padding-left: 1vw; }
@media (min-width: 1201px) {
	.home__topics { margin-bottom: 90px; padding: 0 120px; }
	.home__topics ul { margin-bottom: 20px; }
	.home__topics li dl { font-size: 1.4rem; }
	.home__topics li dt { padding: 15px 10px 15px 15px; }
	.home__topics li dd { padding: 15px 15px 15px 10px; }
	.home__topics p { font-size: 1.4rem; }
	.home__topics p a { background-size: 7px auto; padding-left: 12px; }
}
@media (max-width: 768px) {
	.home__topics { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 9.37vw; padding: 0 6.25vw; }
	.home__topics ul { border-top: 1px solid #eeeeee; margin-bottom: 3.9vw; }
	.home__topics li { border-bottom: 1px solid #eeeeee; padding: 3.12vw 0; }
	.home__topics li dl { display: block; font-size: 3.75vw; width: 100%; }
	.home__topics li dt { display: block; vertical-align: top; width: 100%; padding: 0; width: auto; white-space: nowrap; }
	.home__topics li dd { display: block; vertical-align: top; padding: 0; }
	.home__topics p { font-size: 3.75vw; text-align: right; }
	.home__topics p a { background: url(../common/images/arw_link_01.png) left center no-repeat; background-size: 1.87vw auto; color: #333333; display: inline-block; text-decoration: none; padding-left: 4.68vw; }
}

/* **********************************************************
	home__voice
********************************************************** */
.home__voice { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 7.5vw; padding: 0 2.5vw; }
.home__voice .voice__list { overflow: hidden; }
.home__voice .voice__list a { color: #111111; display: block; text-decoration: none; }
.home__voice .voice__list ul { margin: -2.91vw -2.5vw 2.91vw 0; }
.home__voice .voice__list li { box-sizing: border-box; -webkit-box-sizing: border-box; float: left; width: 33.33%; padding: 2.91vw 2.5vw 0 0; }
.home__voice .voice__list li:nth-of-type(3n+1) { clear: left; }
.home__voice .voice__list li dt { font-weight: bold; }
.home__voice .voice__list li dd { margin-bottom: 0.83vw; }
.home__voice .voice__list li p:nth-of-type(1) { position: relative; margin-bottom: 1.25vw; }
.home__voice .voice__list li p:nth-of-type(1) img { width: 100%; }
.home__voice .voice__list li p:nth-of-type(1) span { overflow: hidden; position: absolute; top: 0px; left: 0px; width: 10.83vw; }
.home__voice .voice__list li p:nth-of-type(1) span em { background-color: #224154; color: #ffffff; display: inline-block; font-family: 'Roboto', sans-serif; font-size: 1vw; line-height: 2.5vw; text-align: center; position: relative; width: 9.16vw; vertical-align: top; }
.home__voice .voice__list li p:nth-of-type(1) span em:after { content: ""; border-bottom: 3vw solid transparent; border-left: 1.66vw solid #224154; position: absolute; top: 0px; left: 100%; width: 0; height: 0; }
.home__voice .voice__list li p:nth-of-type(2) { font-size: 1vw; }
.home__voice > p { text-align: center; overflow: hidden; }
.home__voice > p a { background-color: #7e99a9; color: #ffffff; display: inline-block; font-family: 'Roboto', sans-serif; font-size: 1vw; line-height: 3.66vw; text-decoration: none; position: relative; padding: 0 3.33vw; }
.home__voice > p a:before { content: ""; border-top: 4vw solid transparent; border-right: 1.66vw solid #7e99a9; position: absolute; top: 0px; right: 100%; width: 0; height: 0; }
.home__voice > p a:after { content: ""; border-bottom: 4vw solid transparent; border-left: 1.66vw solid #7e99a9; position: absolute; top: 0px; left: 100%; width: 0; height: 0; }
@media (min-width: 1201px) {
	.home__voice { margin-bottom: 90px; padding: 0 30px; }
	.home__voice .voice__list ul { margin: -35px -30px 35px 0; }
	.home__voice .voice__list li { padding: 35px 30px 0 0; }
	.home__voice .voice__list li dd { margin-bottom: 10px; }
	.home__voice .voice__list li p:nth-of-type(1) { margin-bottom: 15px; }
	.home__voice .voice__list li p:nth-of-type(1) span { width: 130px; }
	.home__voice .voice__list li p:nth-of-type(1) span em { font-size: 1.2rem; line-height: 30px; width: 110px; }
	.home__voice .voice__list li p:nth-of-type(1) span em:after { border-bottom: 30px solid transparent; border-left: 20px solid #224154; }
	.home__voice .voice__list li p:nth-of-type(2) { font-size: 1.2rem; }
	.home__voice > p a { font-size: 1.2rem; line-height: 44px; padding: 0 40px; }
	.home__voice > p a:before { border-top: 44px solid transparent; border-right: 20px solid #7e99a9; }
	.home__voice > p a:after { border-bottom: 44px solid transparent; border-left: 20px solid #7e99a9; }
}
@media (min-width: 769px) {
	.home__voice .voice__list li a:hover p:nth-of-type(1) img { opacity: 0.7; }
	.home__voice > p a:hover { background-color: #a6bdcb; }
	.home__voice > p a:hover:before { border-right-color: #a6bdcb; }
	.home__voice > p a:hover:after { border-left-color: #a6bdcb; }
}
@media (max-width: 768px) {
	.home__voice { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 9.37vw; padding: 0 6.25vw; }
	.home__voice .voice__list { overflow: hidden; }
	.home__voice .voice__list a { color: #111111; display: block; text-decoration: none; }
	.home__voice .voice__list a:after { height: 0; visibility: hidden; content: ""; display: block; clear: both; }
	.home__voice .voice__list ul { margin: -9.37vw 0 9.37vw 0; }
	.home__voice .voice__list li { box-sizing: border-box; -webkit-box-sizing: border-box; float: none; width: auto; padding: 9.37vw 0 0 0; }
	.home__voice .voice__list li:nth-of-type(3n+1) { clear: none; }
	.home__voice .voice__list li dl { -webkit-box-sizing: border-box; box-sizing: border-box; float: right; padding: 9.5vw 0 0 10px; width: 50%; }
	.home__voice .voice__list li dt { font-size: 2.6666vw; font-weight: bold; }
	.home__voice .voice__list li dd { margin-bottom: 2.34vw; }
	.home__voice .voice__list li p:nth-of-type(1) { float: left; position: relative; margin-bottom: 2vw; width: 50%; }
	.home__voice .voice__list li p:nth-of-type(1) img { width: 100%; }
	.home__voice .voice__list li p:nth-of-type(1) span { overflow: hidden; position: absolute; top: 0px; left: calc(100% + 10px); width: 31.25vw; }
	.home__voice .voice__list li p:nth-of-type(1) span em { background-color: #224154; color: #ffffff; display: inline-block; font-family: 'Roboto', sans-serif; font-size: 2.81vw; line-height: 6.87vw; text-align: center; position: relative; width: 26.56vw; vertical-align: top; }
	.home__voice .voice__list li p:nth-of-type(1) span em:after { content: ""; border-bottom: 7vw solid transparent; border-left: 4.68vw solid #224154; position: absolute; top: 0px; left: 100%; width: 0; height: 0; }
	.home__voice .voice__list li p:nth-of-type(2) { clear: right; box-sizing: border-box; -webkit-box-sizing: border-box; float: right; font-size: 3.12vw; padding-left: 10px; width: 50%; }
	.home__voice > p { text-align: center; overflow: hidden; }
	.home__voice > p a { background-color: #7e99a9; color: #ffffff; display: inline-block; font-family: 'Roboto', sans-serif; font-size: 4.37vw; line-height: 10.93vw; text-decoration: none; position: relative; padding: 0 7.81vw; }
	.home__voice > p a:before { content: ""; border-top: 12vw solid transparent; border-right: 4.68vw solid #7e99a9; position: absolute; top: 0px; right: 100%; width: 0; height: 0; }
	.home__voice > p a:after { content: ""; border-bottom: 12vw solid transparent; border-left: 4.68vw solid #7e99a9; position: absolute; top: 0px; left: 100%; width: 0; height: 0; }
}


/* **********************************************************
	home__lineup
********************************************************** */
.lineup__bg { background-color: #ebf0f3; }
.home__lineup { background-color: #ebf0f3; padding-top: 6.66vw; }
.home__lineup .lineup__list { position: relative; height: 115.41vw; }
.home__lineup .lineup__block { position: absolute; }
.home__lineup .lineup__block a { color: #111111; display: block; text-decoration: none; }
.home__lineup .lineup__block p { font-size: 0; line-height: 0; }
.home__lineup .lineup__block p img { width: 100%; }
.home__lineup .lineup__block dl { -webkit-transform: translate(0, -50%); transform: translate(0, -50%); position: absolute; top: 40vw; }
.home__lineup .lineup__block dt { color: #7e99a9; font-size: 3vw; font-family: 'Roboto', sans-serif; line-height: 1.2; margin-bottom: 0.4166vw; }
.home__lineup .lineup__block dt span { display: block; font-size: 80%; }
.home__lineup .lineup__block.block_1 { top: 0px; left: 0px; width: 60vw; }
.home__lineup .lineup__block.block_1 dl { left: 2.5vw; width: 43.33vw; }
.home__lineup .lineup__block.block_2 { top: 9.16vw; right: 0px; width: 50.83vw; }
.home__lineup .lineup__block.block_2 dl { left: 5.83vw; width: 42.5vw; }
.home__lineup .lineup__block.block_3 { top: 50.58vw; left: 0px; width: 47.41vw; }
.home__lineup .lineup__block.block_3 dl { left: 2.5vw; width: 28.33vw; }
.home__lineup .lineup__block.block_4 { top: 59.75vw; right: 0px; width: 63.5vw; }
.home__lineup .lineup__block.block_4 dl { left: 5.83vw; width: 55vw; }
@media (min-width: 1201px) {
	.home__lineup { padding-top: 80px; }
	.home__lineup .lineup__list { height: 1385px; }
	.home__lineup .lineup__block dl { top: 480px; }
	.home__lineup .lineup__block dt { font-size: 3.6rem; margin-bottom: 5px; }
	.home__lineup .lineup__block.block_1 { width: 720px; }
	.home__lineup .lineup__block.block_1 dl { left: 30px; width: 520px; }
	.home__lineup .lineup__block.block_2 { top: 110px; width: 610px; }
	.home__lineup .lineup__block.block_2 dl { left: 70px; width: 510px; }
	.home__lineup .lineup__block.block_3 { top: 607px; width: 569px; }
	.home__lineup .lineup__block.block_3 dl { left: 30px; width: 340px; }
	.home__lineup .lineup__block.block_4 { top: 717px; width: 762px; }
	.home__lineup .lineup__block.block_4 dl { left: 70px; width: 660px; }
}
@media (min-width: 769px) {
	.home__lineup .lineup__block a:hover img { opacity: 0.7; }
}
@media (max-width: 768px) {
	.home__lineup { border-bottom: 1px solid #e5e5e5; background-color: transparent; padding-top: 0; }
	.home__lineup .lineup__title { background-color: #ebf0f3; padding: 10.93vw 0 9.37vw 0; }
	.home__lineup .lineup__title h2 { margin-bottom: 0; }
	.home__lineup .lineup__list { position: relative; height: auto; }
	.home__lineup .lineup__block { position: relative; }
	.home__lineup .lineup__block a { color: #111111; display: block; text-decoration: none; }
	.home__lineup .lineup__block p { font-size: 0; line-height: 0; }
	.home__lineup .lineup__block p img { width: 100%; }
	.home__lineup .lineup__block dl { -webkit-transform: translate(0, 0); transform: translate(0, 0); position: relative; top: auto; padding: 6.25vw; }
	.home__lineup .lineup__block dt { color: #7e99a9; font-size: 7.81vw; font-family: 'Roboto', sans-serif; line-height: 1.2; margin-bottom: 0.7812vw; }
	.home__lineup .lineup__block dt span { display: block; font-size: 80%; }
	.home__lineup .lineup__block.block_1 { top: auto; left: auto; width: auto; }
	.home__lineup .lineup__block.block_1 dl { left: auto; width: auto; }
	.home__lineup .lineup__block.block_2 { top: auto; right: auto; width: auto; }
	.home__lineup .lineup__block.block_2 dl { left: auto; width: auto; }
	.home__lineup .lineup__block.block_3 { top: auto; left: auto; width: auto; }
	.home__lineup .lineup__block.block_3 dl { left: auto; width: auto; }
	.home__lineup .lineup__block.block_4 { top: auto; right: auto; width: auto; }
	.home__lineup .lineup__block.block_4 dl { left: auto; width: auto; }
}


/* **********************************************************
	home__banner
********************************************************** */
.home__banner { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 5vw; padding: 0 7.5vw; }
.home__banner .banner__list { font-size: 0; line-height: 0; text-align: center; overflow: hidden; }
.home__banner .banner__list img { width: 100%; }
.home__banner .banner__list ul { margin: -2.5vw -1.25vw 0 -1.25vw; }
.home__banner .banner__list li { box-sizing: border-box; -webkit-box-sizing: border-box; display: inline-block; font-size: 0; line-height: 0; width: 33.33%; padding: 2.5vw 1.25vw 0 1.25vw; }
@media (min-width: 1201px) {
	.home__banner { margin-bottom: 60px; padding: 0 90px; }
	.home__banner .banner__list ul { margin: -30px -15px 0 15px; }
	.home__banner .banner__list li { padding: 30px 15px 0 15px; }
}
@media (min-width: 769px) {
	.home__banner .banner__list li a:hover img { opacity: 0.7; }
}
@media (max-width: 768px) {
	.home__banner { box-sizing: border-box; -webkit-box-sizing: border-box; margin-bottom: 6.25vw; padding: 0 6.25vw; }
	.home__banner .banner__list { font-size: 0; line-height: 0; text-align: center; overflow: hidden; }
	.home__banner .banner__list img { width: 100%; }
	.home__banner .banner__list ul { margin: -3.12vw 0 0 0; }
	.home__banner .banner__list li { box-sizing: border-box; -webkit-box-sizing: border-box; display: block; font-size: 0; line-height: 0; width: auto; padding: 3.12vw 0 0 0; }
}

/* **********************************************************
	home__links
********************************************************** */
.home__links { margin-bottom: 6.6666vw; }
.home__links ul { display: flex; justify-content: center; }
.home__links ul li:nth-of-type(2) { margin: 0 0 0 8.3333vw; }
.home__links ul li a { background-color: #7e99a9; color: #ffffff; display: block; line-height: 3.6666vw; text-align: center; text-decoration: none; position: relative; padding: 0 5.8333vw; width: 6em; }
.home__links ul li a::before { content: ""; position: absolute; top: 0px; left: 0px; width: 0; height: 0; border-style: solid; border-width: 3.6666vw 1.6666vw 0 0; border-color: #ffffff transparent transparent transparent; }
.home__links ul li a::after { content: ""; position: absolute; bottom: 0px; right: 0px; width: 0; height: 0; border-style: solid; border-width: 0 0 3.6666vw 1.6666vw; border-color: transparent transparent #ffffff transparent; }
@media (min-width: 1201px) {
.home__links { margin-bottom: 80px; }
.home__links ul li:nth-of-type(2) { margin: 0 0 0 100px; }
.home__links ul li a { line-height: 44px; padding: 0 70px; }
.home__links ul li a::before { border-width: 44px 20px 0 0; }
.home__links ul li a::after { border-width: 0 0 44px 20px; }
}
@media (min-width: 769px) {
.home__links ul li a:hover { opacity: 0.7; }
}
@media (max-width: 768px) {
.home__links { margin-bottom: 14.8437vw; }
.home__links ul { display: block; }
.home__links ul li { text-align: center; width: auto; }
.home__links ul li:nth-of-type(2) { margin: 7.8125vw 0 0 0; }
.home__links ul li a { display: block; vertical-align: top;  font-size: 4.37vw; line-height: 10.93vw; margin: 0 6.25vw; padding: 0; width: auto; }
.home__links ul li a::before { border-width: 10.93vw 4.68vw 0 0;; }
.home__links ul li a::after { border-width: 0 0 10.93vw 4.68vw; }
}




















