/*
Theme Name: spotaka_corp
Theme URI: https://spotaka.co.jp/
Description: A theme by <a href="https://www.buroki-design.com">BUROKI</a>.
Author: BUROKI
Author URI: https://www.buroki-design.com
*/

@media screen and (min-width: 768px){

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 { 
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

* {
	-webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
html {
font-size: 62.5%;
}
body{
	height:100%;
	background-color:#c00;
	color:#444;
	font-size: 10px;
	font-size: 1.0rem;
	font-family: 'Oswald', 'Noto Sans JP', "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
    -moz-animation: fadeIn 2s ease 0s 1 normal;
    -o-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-moz-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-o-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
html, body {
	height:100%;
}

ol, ul {
	list-style: none;
	letter-spacing:0.05em;
}

p {
	line-height:1.8;
	letter-spacing:0.05em;
}
dl {
	line-height:1.8;
	letter-spacing:0.05em;
}

caption, th, td {
	font-weight: normal;
	text-align: left;
	vertical-align:top;
}

img {
max-width: 100%;
height: auto;
width /***/:auto;
border:0;
vertical-align:bottom;
}
a,a:link a:visited {
	color:#c00;
	transition: all .3s;
	text-decoration:none;
}
a:hover {
	color:#111;
	text-decoration:none;
}

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

a.imghover:link img {
transition: all .3s;
}
a.imghover:hover img {
filter:alpha(opacity=70);
opacity:0.7;
}
.imghover {
transition: all .3s;
}
.imghover:hover {
filter:alpha(opacity=70);
opacity:0.7;
}

div.pagebox {
			min-height: 100%;
			box-sizing: border-box;
		}

.container {
	width:100%;
}

#spo_top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index:1000;
}
#spo_top a,a:link a:visited {
	display:block;
	text-align:center;
	font-size:1.0rem;
	line-height:55px;
	letter-spacing:0.1em;
	width:55px;
	height:55px;
	background-color:#c00;
	color:#fff;
	border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
#spo_top a:hover {
	background-color:#111;
}
}

/* ############################## header ############################## */

/* ########### index_header_sp ########### */
@media screen and (min-width:1024px){
.index_header_sp {
	width:100%;
	height:90px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.index_logo_sp {
	width:110px;
}
.index_logo_sp h1 img {
	width:100%;
}
.index_header_sp .global_nav {
	flex:1;
}
.index_header_sp .global_nav ul {
	font-size:1.3rem;
	letter-spacing:0.1em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}
.index_header_sp .global_nav ul li {
	margin-left:40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.index_header_sp .global_nav ul li a,a:link a:visited {
	color:#fff;
	display:inline-block;
	position: relative;
}
.index_header_sp .global_nav ul li a:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #fff;
    width: 0;
    height: 1px;
    bottom: -3px;
    left: 0;
    -webkit-transition: .3s ease 0s;
    transition: .3s ease 0s;
}
.index_header_sp .global_nav ul li a:hover {
	text-decoration:none;
}
.index_header_sp .global_nav ul li a:hover:before {
    width: 100%;
}

.subtitle_sp {
    width: 38px;
    height: 100%;
    position: absolute;
    z-index: 5500;
    position: fixed;
    top: 0;
    right: 0;
}
.subtitle_sp p {
    height: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    align-items: center;
}
.subtitle_sp p img {
    width: 9px;
}
}
@media screen and (min-width:768px) and (max-width:1023px){
.index_header_sp {
	width:100%;
	height:80px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.index_logo_sp {
	width:100px;
}
.index_logo_sp h1 img {
	width:100%;
}
.index_header_sp .global_nav {
	flex:1;
}
.index_header_sp .global_nav ul {
	font-size:1.3rem;
	letter-spacing:0.1em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}
.index_header_sp .global_nav ul li {
	margin-left:30px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.index_header_sp .global_nav ul li a {
	color:#fff;
}

.subtitle_sp {
    width: 35px;
    height: 100%;
    position: absolute;
    z-index: 5500;
    position: fixed;
    top: 0;
    right: 0;
}
.subtitle_sp p {
    height: 100%;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    align-items: center;
}
.subtitle_sp p img {
    width: 9px;
}
}

/* ########### index_header_sp ########### */


@media screen and (min-width: 768px){
.sp_header_sp {
display:none;
}
.sp_header_sp h1 {
display:none;
}
.sp_header_sp a.nav_menu {
    display:none !important;
}
.sp_header_sp .gnav {
    display:none !important;
}
}

/* ########### change_header_sp ########### */

@media screen and (min-width:1024px){
.change_header_sp {
	position: fixed;
	top: 0;
	left: 0;
	width:100%;
	height:70px;
	z-index:1000;
	display:none;
	background-color:#c00;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.1);
}
.change_header_sp01 {
	width:92%;
	height:70px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	margin:0 auto;
}
.change_header_sp01 .change_logo_sp {
	width:90px;
}
.change_header_sp01 .change_logo_sp h1 img {
	width:100%;
}
.change_header_sp01 .change_global_nav {
	flex:1;
}
.change_header_sp01 .change_global_nav ul {
	font-size:1.3rem;
	letter-spacing:0.1em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}
.change_header_sp01 .change_global_nav ul li {
	margin-left:40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.change_header_sp01 .change_global_nav ul li a,a:link a:visited {
	color:#fff;
	display:inline-block;
	position: relative;
}
.change_header_sp01 .change_global_nav ul li a:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #fff;
    width: 0;
    height: 1px;
    bottom: -3px;
    left: 0;
    -webkit-transition: .3s ease 0s;
    transition: .3s ease 0s;
}
.change_header_sp01 .change_global_nav ul li a:hover {
	text-decoration:none;
}
.change_header_sp01 .change_global_nav ul li a:hover:before {
    width: 100%;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.change_header_sp {
	position: fixed;
	top: 0;
	left: 0;
	width:100%;
	height:70px;
	z-index:1000;
	display:none;
	background-color:#c00;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.1);
}
.change_header_sp01 {
	width:92%;
	height:70px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	margin:0 auto;
}
.change_header_sp01 .change_logo_sp {
	width:90px;
}
.change_header_sp01 .change_logo_sp h1 img {
	width:100%;
}
.change_header_sp01 .change_global_nav {
	flex:1;
}
.change_header_sp01 .change_global_nav ul {
	font-size:1.3rem;
	letter-spacing:0.1em;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}
.change_header_sp01 .change_global_nav ul li {
	margin-left:30px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}
.change_header_sp01 .change_global_nav ul li a {
	color:#fff;
}
}

/* ########### change_header_sp ########### */

/* ############################## header ############################## */


/* ############################## index_style ############################## */

@media screen and (min-width:1024px){
.index_contents_sp {
	position:relative;
	width:100%;
}
#index_main_sp {
	width: 100vw;
    height: 100vh;
    background-color:#c00;
}
.index_main_sp01 {
	position:relative;
	width:92%;
	height: 100vh;
	margin:0 auto;
}
.index_catch_sp {
	position:absolute;
	width:100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.index_catch_sp h2 {
	width:80%;
	text-align:center;
	margin:0 auto;
}
p.scroll_btn {
	position:absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	z-index:20;
}
p.scroll_btn img {
	width:90px;
}
.vegas-timer {
    display: none;
}
}
@media screen and (min-width:768px) and (max-width:1023px){
.index_contents_sp {
	position:relative;
	width:100%;
}
#index_main_sp {
	width: 100vw;
    height: 100vh;
    background-color:#c00;
}
.index_main_sp01 {
	position:relative;
	width:94%;
	height: 100vh;
	margin:0 auto;
}
.index_catch_sp {
	position:absolute;
	width:100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}
.index_catch_sp h2 {
	width:90%;
	text-align:center;
	margin:0 auto;
}
p.scroll_btn {
	position:absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	z-index:20;
}
p.scroll_btn img {
	width:90px;
}
.vegas-timer {
    display: none;
}
}

@media screen and (min-width: 768px){
#sp_index_main_sp {
	display:none;
}
}

/* ########### index_title_sp ########### */
@media screen and (min-width:1024px){
.index_title_sp {
	position:relative;
	width:100%;
    text-align:center;
}
.index_title_sp01 {
	position:relative;
	width:92%;
	margin:0 auto;
}
.index_title_sp h2 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:8.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_title_sp p {
	display:inline-block;
	font-size:1.3rem;
	font-weight:700;
	line-height:1.0;
	letter-spacing:0.05em;
	padding-top:8px;
	border-bottom: 1px dotted #fff;
	padding-bottom:6px;
}

h6.more_btn {
	position:absolute;
	font-size:1.1rem;
	letter-spacing:0.1em;
	line-height:1.0;
	top:5px;
	right:0;
}
h6.more_btn a,a:link a:visited {
	color:#fff;
	display:block;
	background:url(../img/list_mk002.svg) no-repeat right 4px center;
    background-size:11px 11px;
	background-color:#c00;
	border:1px solid #a00;
	padding:15px 24px;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
h6.more_btn a:hover {
	background:url(../img/list_mk002.svg) no-repeat right 2px center;
    background-size:11px 11px;
	background-color:#a00;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_title_sp {
	position:relative;
	width:100%;
    text-align:center;
}
.index_title_sp01 {
	position:relative;
	width:92%;
	margin:0 auto;
}
.index_title_sp h2 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:7.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_title_sp p {
	font-size:1.2rem;
	font-weight:700;
	line-height:1.0;
	letter-spacing:0.05em;
	padding-top:8px;
}

h6.more_btn {
	position:absolute;
	font-size:1.1rem;
	letter-spacing:0.1em;
	line-height:1.0;
	top:7px;
	right:0;
}
h6.more_btn a,a:link a:visited {
	color:#fff;
	display:block;
	background:url(../img/list_mk002.svg) no-repeat right 4px center;
    background-size:11px 11px;
	background-color:#c00;
	border:1px solid #a00;
	padding:15px 24px;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
h6.more_btn a:hover {
	background:url(../img/list_mk002.svg) no-repeat right 2px center;
    background-size:11px 11px;
	background-color:#a00;
}
}
/* ########### index_title_sp ########### */


/* ########### index_business_sp ########### */

@media screen and (min-width:1024px){

.index_business_sp {
	position:relative;
	width:100%;
	background:url(../../img/index_img/business_backimg.svg) no-repeat -2px 80px;
    background-size:15%;
	background-color: #c00;
	padding-top:80px;
	padding-bottom:80px;
}
.index_business_sp:before {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 92%;
    height: 40px;
    top: -40px;
    left: 4%;
    z-index:10;
}
.index_business_sp:after {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 92%;
    height: 40px;
    bottom: -40px;
    left: 4%;
    z-index:10;
}
.index_business_sp .index_title_sp {
	color:#fff;
}
.index_business_sp p.index_business_desc {
	text-align:center;
	color:#fff;
	font-size:1.4rem;
	letter-spacing:0.075em;
	margin-top:40px;
}
.index_business_sp01 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 40px auto;
}
.index_business_sp01_left {
	position:relative;
	width:48.5%;
}
.index_business_sp01_left a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp01_left::before {
  position: absolute;
  content: '';
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp01_left::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_business_sp01_right {
	position:relative;
	width:48.5%;
}
.index_business_sp01_right a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp01_right::before {
  position: absolute;
  content: '';
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp01_right::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.index_business_sp01 .index_business_sp01_title {
	position:absolute;
	width:30%;
	top:20px;
	left:0;
	z-index:10;
}
.index_business_sp01 .index_business_sp01_title h3 {
	color:#fff;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:7.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_business_sp01 .index_business_sp01_title h4 {
	color:#fff;
	font-size:3.0rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin-top:40px;
}
.index_business_sp01 .index_business_sp01_title p {
	color:#fff;
	font-size:1.2rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	padding:8px 0 0 2px;
}
.index_business_sp01 .index_business_sp01_thumb {
	width:88%;
	margin-left:12%;
	z-index:1;
	background-color:#000;
}

.index_business_sp02 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	justify-content: space-between;
	margin: 0 auto;
}
.index_business_sp02_list {
	position:relative;
	width:31.5%;
}
.index_business_sp02_list a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp02_list::before {
  position: absolute;
  content: '';
  width: 40px;
  height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp02_list::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_business_sp02_list .index_business_sp02_title {
	width:100%;
	z-index:10;
}
.index_business_sp02_list .index_business_sp02_title h3 {
	position:absolute;
	top:20px;
	left:0;
	color:#fff;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:6.8rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_business_sp02_list .index_business_sp02_title h4 {
	color:#fff;
	font-size:2.0rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin:20px 0 0 18%;
}
.index_business_sp02_list .index_business_sp02_title p {
	color:#fff;
	font-size:1.2rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	margin-left:18%;
	padding:8px 0 0 2px;
}
.index_business_sp02_list .index_business_sp02_thumb {
	width:82%;
	margin-left:18%;
	z-index:1;
	background-color:#000;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_business_sp {
	position:relative;
	width:100%;
	background:url(../../img/index_img/business_backimg.svg) no-repeat -2px 40px;
    background-size:20%;
	background-color: #c00;
	padding-top:60px;
	padding-bottom:120px;
}
.index_business_sp:before {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 92%;
    height: 40px;
    top: -40px;
    left: 4%;
    z-index:10;
}
.index_business_sp:after {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 92%;
    height: 40px;
    bottom: -40px;
    left: 4%;
    z-index:10;
}
.index_business_sp .index_title_sp {
	color:#fff;
}
.index_business_sp p.index_business_desc {
	text-align:center;
	color:#fff;
	font-size:1.3rem;
	letter-spacing:0.075em;
	margin-top:40px;
}

.index_business_sp01 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 40px auto;
}
.index_business_sp01_left {
	position:relative;
	width:48.5%;
}
.index_business_sp01_left a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp01_left::before {
  position: absolute;
  content: '';
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp01_left::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_business_sp01_right {
	position:relative;
	width:48.5%;
}
.index_business_sp01_right a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp01_right::before {
  position: absolute;
  content: '';
  width: 50px;
  height: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp01_right::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}

.index_business_sp01 .index_business_sp01_title {
	position:absolute;
	width:30%;
	top:20px;
	left:0;
	z-index:10;
}
.index_business_sp01 .index_business_sp01_title h3 {
	color:#fff;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:6.4rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_business_sp01 .index_business_sp01_title h4 {
	color:#fff;
	font-size:2.0rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin-top:40px;
}
.index_business_sp01 .index_business_sp01_title p {
	color:#fff;
	font-size:1.1rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	padding:8px 0 0 2px;
}
.index_business_sp01 .index_business_sp01_thumb {
	width:88%;
	margin-left:12%;
	z-index:1;
}

.index_business_sp02 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	justify-content: space-between;
	margin: 0 auto;
}
.index_business_sp02_list {
	position:relative;
	width:31.5%;
}
.index_business_sp02_list a {
	position:relative;
	width:100%;
	display:block;
}
.index_business_sp02_list::before {
  position: absolute;
  content: '';
  width: 40px;
  height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:10;
}
.index_business_sp02_list::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_business_sp02_list .index_business_sp02_title {
	width:100%;
	z-index:10;
}
.index_business_sp02_list .index_business_sp02_title h3 {
	position:absolute;
	top:10px;
	left:0;
	color:#fff;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:6.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_business_sp02_list .index_business_sp02_title h4 {
	color:#fff;
	font-size:1.6rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin:15px 0 0 18%;
}
.index_business_sp02_list .index_business_sp02_title h4 br {
	display:none;
}
.index_business_sp02_list .index_business_sp02_title p {
	color:#fff;
	font-size:1.1rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	margin-left:18%;
	padding:8px 0 0 2px;
}
.index_business_sp02_list .index_business_sp02_thumb {
	width:82%;
	margin-left:18%;
	z-index:1;
}
}

/* ########### index_business_sp ########### */


/* ########### index_company_sp ########### */

@media screen and (min-width:1024px){
.index_company_sp {
	position:relative;
	width:100%;
	background-color:#a00;
	padding-top:120px;
	padding-bottom:100px;
}
.index_company_sp:after {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 100%;
    height: 50%;
    bottom: 0;
    left: 0;
    z-index:1;
}
.index_company_sp .index_title_sp {
	color:#fff;
}

.index_company_sp01 {
	position:relative;
	width:92%;
	margin: 40px auto;
	z-index:2;
}
.index_company_sp01_left {
	position:absolute;
	width:40%;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
	background:url(../../img/index_img/aboutus_backimg.svg) no-repeat -2px -2px;
    background-size:20%;
	background-color:#fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	padding:60px;
	z-index:10;
}
.index_company_sp01_left h2 {
	color:#c00;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:6.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_company_sp01_left h3 {
	color:#222;
	font-size:2.6rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin-top:40px;
}
.index_company_sp01_left p {
	font-size:1.4rem;
	line-height:2.0;
	letter-spacing:0.05em;
	margin-top:30px;
}
.index_company_sp01_right {
	position:relative;
	width:75%;
	margin-left:25%;
	z-index:1;
}

.index_company_sp02 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	z-index:2;
}
.index_company_sp02_left {
	width:49.7%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items:center;
	background:url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size:16px 16px;
    background-color:#a00;
}
.index_company_sp02_left .index_company_sp02_thumb {
	position:relative;
	width:50%;
}
.index_company_sp02_left .index_company_sp02_thumb a {
	display:block;
	overflow: hidden;
}
.index_company_sp02_left .index_company_sp02_thumb a img {
	width: 100%;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.index_company_sp02_left .index_company_sp02_thumb a:hover img {
	transform: scale(1.1);
}
.index_company_sp02_left .index_company_sp02_thumb .caption {
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size:1.4rem;
	color:#fff;
	letter-spacing:0.1em;
	font-weight:400;
}
.index_company_sp02_left .index_company_sp02_thumb .mask {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	background-color:rgba(0,0,0,0.5);
	-webkit-transition: all 0.6s ease;
    -moz-transition:  all 0.6s ease;
    -o-transition:  all 0.6s ease;
    transition:all 0.6s ease;
}
.index_company_sp02_left .index_company_sp02_thumb:hover .mask {
	opacity:1;  /* マスクを表示する */
}

.index_company_sp02_left .index_company_sp02_title {
	width:50%;
	padding-left:40px;
}

.index_company_sp02_right {
	width:49.7%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items:center;
	background:url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size:16px 16px;
    background-color:#a00;
}
.index_company_sp02_right .index_company_sp02_thumb {
	position:relative;
	width:50%;
}
.index_company_sp02_right .index_company_sp02_thumb a {
	display:block;
	overflow: hidden;
}
.index_company_sp02_right .index_company_sp02_thumb a img {
	width: 100%;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.index_company_sp02_right .index_company_sp02_thumb a:hover img {
	transform: scale(1.1);
}
.index_company_sp02_right .index_company_sp02_thumb .caption {
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size:1.4rem;
	color:#fff;
	letter-spacing:0.1em;
	font-weight:400;
}
.index_company_sp02_right .index_company_sp02_thumb .mask {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	background-color:rgba(0,0,0,0.5);
	-webkit-transition: all 0.6s ease;
    -moz-transition:  all 0.6s ease;
    -o-transition:  all 0.6s ease;
    transition:all 0.6s ease;
}
.index_company_sp02_right .index_company_sp02_thumb:hover .mask {
	opacity:1;  /* マスクを表示する */
}

.index_company_sp02_right .index_company_sp02_title {
	width:50%;
	padding-left:40px;
}

.index_company_sp02 .index_company_sp02_title h3 {
	color:#fff;
	font-size:2.2rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:0.05em;
}
.index_company_sp02 .index_company_sp02_title p {
	color:#fff;
	font-size:1.2rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	padding:8px 0 0 2px;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_company_sp {
	position:relative;
	width:100%;
	background-color:#a00;
	padding-top:100px;
	padding-bottom:80px;
}
.index_company_sp:after {
	content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 100%;
    height: 40%;
    bottom: 0;
    left: 0;
    z-index:1;
}
.index_company_sp .index_title_sp {
	color:#fff;
}

.index_company_sp01 {
	position:relative;
	width:96%;
	margin: 40px 0 200px 4%;
	z-index:2;
}
.index_company_sp01_left {
	position:absolute;
	width:80%;
	background:url(../../img/index_img/aboutus_backimg.svg) no-repeat -2px -2px;
    background-size:13%;
	background-color:#fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	padding:40px;
	z-index:10;
	left:0;
	bottom:-160px;
}
.index_company_sp01_left h2 {
	color:#c00;
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:5.0rem;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_company_sp01_left h3 {
	color:#222;
	font-size:2.0rem;
	font-weight:700;
	line-height:1.5;
	letter-spacing:0.05em;
	margin-top:25px;
}
.index_company_sp01_left h3 br {
	display:none;
}
.index_company_sp01_left p {
	font-size:1.3rem;
	line-height:1.8;
	letter-spacing:0.05em;
	margin-top:20px;
}
.index_company_sp01_right {
	position:relative;
	width:90%;
	margin-left:10%;
	z-index:1;
}


.index_company_sp02 {
	position:relative;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	z-index:2;
}
.index_company_sp02_left {
	width:49.7%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items:center;
	background:url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size:16px 16px;
    background-color:#a00;
}
.index_company_sp02_left .index_company_sp02_thumb {
	position:relative;
	width:45%;
}
.index_company_sp02_left .index_company_sp02_thumb a {
	display:block;
	overflow: hidden;
}
.index_company_sp02_left .index_company_sp02_thumb a img {
	width: 100%;
}
.index_company_sp02_left .index_company_sp02_thumb .caption {
	display:none;
}
.index_company_sp02_left .index_company_sp02_thumb .mask {
	display:none;
}

.index_company_sp02_left .index_company_sp02_title {
	width:55%;
	padding-left:20px;
}

.index_company_sp02_right {
	width:49.7%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items:center;
	background:url(../img/list_mk002.svg) no-repeat right 10px center;
    background-size:16px 16px;
    background-color:#a00;
}
.index_company_sp02_right .index_company_sp02_thumb {
	position:relative;
	width:45%;
}
.index_company_sp02_right .index_company_sp02_thumb a {
	display:block;
	overflow: hidden;
}
.index_company_sp02_right .index_company_sp02_thumb a img {
	width: 100%;
}
.index_company_sp02_right .index_company_sp02_thumb .caption {
	display:none;
}
.index_company_sp02_right .index_company_sp02_thumb .mask {
	display:none;
}

.index_company_sp02_right .index_company_sp02_title {
	width:55%;
	padding-left:20px;
}

.index_company_sp02 .index_company_sp02_title h3 {
	color:#fff;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:0.05em;
}
.index_company_sp02 .index_company_sp02_title p {
	color:#fff;
	font-size:1.1rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	padding:8px 0 0 2px;
}
}

/* ########### index_company_sp ########### */


/* ########### index_news_sp ########### */

@media screen and (min-width:1024px){
.index_news_sp {
	position:relative;
	width:96%;
	margin-left:4%;
	background-color:#fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: stretch;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	z-index:10;
}
.index_news_sp_left {
	width:24%;
	text-align:right;
	background-color:#f3f3f3;
	padding: 57px 60px 0 0;
}
.index_news_sp_left h2 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:8.0rem;
	color:#222;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_news_sp_left p {
	font-size:1.3rem;
	font-weight:700;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
	padding:2px 4px 0 0 ;
}

.index_news_sp_right {
	flex:1;
	padding:60px 60px 40px;
}
.index_news_sp_right dl {
	letter-spacing:0.075rem;
}
.index_news_sp_right dl dt {
	float:left;
	color:#111;
	font-size:1.2rem;
	font-weight:500;
	line-height:2.0;
}
.index_news_sp_right dl dd {
	font-size:1.4rem;
	padding-left:20px;
	line-height:1.8;
	margin: 0 0 20px 90px;
	border-left:1px dotted #c00;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_news_sp {
	position:relative;
	width:96%;
	margin-left:4%;
	background-color:#fff;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: stretch;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	z-index:10;
}
.index_news_sp_left {
	width:30%;
	text-align:right;
	background-color:#f3f3f3;
	padding: 37px 35px 0 0;
}
.index_news_sp_left h2 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:7.0rem;
	color:#222;
	line-height:1.0;
	letter-spacing:0.05em;
}
.index_news_sp_left p {
	font-size:1.2rem;
	font-weight:700;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
	padding:2px 4px 0 0 ;
}

.index_news_sp_right {
	flex:1;
	padding:40px 40px 20px;
}
.index_news_sp_right dl {
	letter-spacing:0.075rem;
}
.index_news_sp_right dl dt {
	color:#111;
	font-size:1.2rem;
	font-weight:500;
	line-height:2.0;
}
.index_news_sp_right dl dd {
	font-size:1.3rem;
	padding-left:20px;
	line-height:1.8;
	margin-top:10px;
	margin-bottom: 20px;
	border-left:1px dotted #c00;
}
}

/* ########### index_news_sp ########### */


/* ########### index_recruit_sp ########### */

@media screen and (min-width:1024px){
.index_recruit_sp {
	position:relative;
	width:100%;
	padding-top:120px;
	background:url(../../img/index_img/index_recruit_backimg.png) no-repeat 50% 50%;
    background-size:cover;
	background-color:#a00;
	margin-top:-40px;
}
.index_recruit_sp .index_title_sp {
	color:#fff;
}
.index_recruit_sp01 {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:0 auto;
	padding:40px 0 120px;
}
.index_recruit_sp01 .index_recruit_list {
	position:relative;
	width:24.5%;
	background-color:#fff;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb {
	position:relative;
	width: 100%;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb::before {
  position: absolute;
  content: '';
  width: 40px;
  height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:50;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a {
	display:block;
	overflow: hidden;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a img {
	width: 100%;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a:hover img {
	transform: scale(1.1);
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb .caption {
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size:1.4rem;
	color:#fff;
	letter-spacing:0.1em;
	font-weight:400;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb .mask {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	background-color:rgba(0,0,0,0.5);
	-webkit-transition: all 0.6s ease;
    -moz-transition:  all 0.6s ease;
    -o-transition:  all 0.6s ease;
    transition:all 0.6s ease;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb:hover .mask {
	opacity:1;  /* マスクを表示する */
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title {
	width:100%;
	padding: 30px 40px 40px;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title h3 {
	font-size:2.2rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:0.05em;
	color:#222;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title p {
	font-size:1.2rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	color:#c00;
	padding:6px 0 0 2px;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_recruit_sp {
	position:relative;
	width:100%;
	padding-top:100px;
	background:url(../../img/index_img/index_recruit_backimg.png) no-repeat 50% 50%;
    background-size:cover;
	background-color:#a00;
	margin-top:-40px;
}
.index_recruit_sp .index_title_sp {
	color:#fff;
}
.index_recruit_sp01 {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:0 auto;
	padding:40px 0 80px;
}
.index_recruit_sp01 .index_recruit_list {
	position:relative;
	width:49.5%;
	background-color:#fff;
	margin-bottom:10px;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb {
	position:relative;
	width: 100%;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb::before {
  position: absolute;
  content: '';
  width: 40px;
  height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index:50;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb::before {
  top: 0;
  right: 0;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a {
	display:block;
	overflow: hidden;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a img {
	width: 100%;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb a:hover img {
	transform: scale(1.1);
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb .caption {
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	font-size:1.4rem;
	color:#fff;
	letter-spacing:0.1em;
	font-weight:400;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb .mask {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	background-color:rgba(0,0,0,0.5);
	-webkit-transition: all 0.6s ease;
    -moz-transition:  all 0.6s ease;
    -o-transition:  all 0.6s ease;
    transition:all 0.6s ease;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_thumb:hover .mask {
	opacity:1;  /* マスクを表示する */
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title {
	width:100%;
	padding: 30px 40px 40px;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title h3 {
	font-size:2.0rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:0.05em;
	color:#222;
}
.index_recruit_sp01 .index_recruit_list .index_recruit_title p {
	font-size:1.1rem;
	font-weight:400;
	line-height:1.0;
	letter-spacing:0.075em;
	color:#c00;
	padding:6px 0 0 2px;
}
}

/* ########### index_recruit_sp ########### */


/* ########### index_bn_sp ########### */

@media screen and (min-width:1024px){
.index_bn_sp {
	position:relative;
	width:100%;
	padding:120px 0 270px;
	background-color:#222;
}
.index_bn_sp ul {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
}
.index_bn_sp ul li {
	width:18%;
	margin-right:2.5%;
	margin-bottom:30px;
}
.index_bn_sp ul li:nth-child(5n) {
	margin-right:0;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.index_bn_sp {
	position:relative;
	width:100%;
	padding:80px 0 210px;
	background-color:#222;
}
.index_bn_sp ul {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
}
.index_bn_sp ul li {
	width:23%;
	margin-right:2.6666%;
	margin-bottom:20px;
}
.index_bn_sp ul li:nth-child(4n) {
	margin-right:0;
}
}
/* ########### index_bn_sp ########### */


/* ############################## index_style ############################## */


/* ############# page_access_sp ############# */

@media screen and (min-width:1024px){
.page_access_sp {
	position:relative;
	width:100%;
	background-color:#fff;
	padding-bottom:60px;
}
.page_access_sp:after {
	content:"";
	position:absolute;
  width:4%;
  height:100%;
  top: 0;
  right: 0;
  background-color:#f1f1f1;
}
.page_access_map_sp {
	position:absolute;
	top: -200px;
	left: 4%;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	height:400px;
	background-color:#fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	padding:15px;
	z-index:10;
}
.page_access_map_list {
	width:32.5%;
}
.page_access_sp01 {
	width:97%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
	padding-top:250px;
}
.page_access_sp01_left {
	width:250px;
	text-align:right;
}
.page_access_sp01_left h3 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:8.0rem;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
}
.page_access_sp01_left p {
	font-size:1.3rem;
	font-weight:700;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
	padding:2px 4px 0 0 ;
}
.page_access_sp01_right {
	flex:1;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 5px 90px 0 40px;
}
.page_access_sp01_right dl {
	letter-spacing:0.075rem;
	line-height:1.6;
	padding-left:26px;
}
.page_access_sp01_right dl dt {
	float:left;
	color:#222;
	font-size:1.3rem;
}
.page_access_sp01_right dl dd {
	font-size:1.3rem;
	padding:0 0 10px 90px;
}
.page_access_sp01_right dl dd:last-child {
	padding-bottom:0 ;
}

.page_access_sp01_right_left {
	width:48.5%;
}
.page_access_sp01_right_left h4 {
	color:#222;
	font-size:2.0rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:20px;
	border-left:1px dotted #c00;
	padding-left:24px;
}
.page_access_sp01_right_right {
	width:48.5%;
}
.page_access_sp01_right_right h4 {
	color:#222;
	font-size:2.0rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:20px;
	border-left:1px dotted #c00;
	padding-left:24px;
}
.page_access_sp01_right_right02 {
	width:100%;
	padding:4px 0 25px;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    margin-top:25px;
    border:1px dotted #ddd;
}
.page_access_sp01_right_right03 {
	position:relative;
	width:100%;
}
.page_access_sp01_right_right02 h5 {
	color:#222;
	font-size:1.6rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:15px;
	margin-top:20px;
	padding-left:36px;
	padding-right:100px;
	background:url(../img/list_mk001.svg) no-repeat 22px 7px;
    background-size:12px 12px;
}
.page_access_sp01_right_right02 p.spopar_logo {
	position:absolute;
	width:70px;
	top:-10px;
	right:20px;
}
.page_access_sp01_right_right02 p.spopar_logo img {
	width:100%;
}

}

@media screen and (min-width:768px) and (max-width:1023px){
.page_access_sp {
	position:relative;
	width:100%;
	background-color:#fff;
	padding-bottom:60px;
}
.page_access_sp:after {
	content:"";
	position:absolute;
  width:4%;
  height:100%;
  top: 0;
  right: 0;
  background-color:#f1f1f1;
}
.page_access_map_sp {
	position:absolute;
	top: -150px;
	left: 4%;
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	height:300px;
	background-color:#fff;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	padding:15px;
	z-index:10;
}
.page_access_map_list {
	width:32.5%;
}
.page_access_sp01 {
	width:86%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
	padding-top:200px;
}
.page_access_sp01_left {
	width:190px;
	text-align:right;
}
.page_access_sp01_left h3 {
	font-family: bebas-neue, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:7.0rem;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
}
.page_access_sp01_left p {
	font-size:1.2rem;
	font-weight:700;
	color:#c00;
	line-height:1.0;
	letter-spacing:0.05em;
	padding:2px 4px 0 0 ;
}

.page_access_sp01_right {
	flex:1;
	padding: 5px 15px 0 40px;
}
.page_access_sp01_right dl {
	letter-spacing:0.075rem;
	line-height:1.6;
	padding-left:26px;
}
.page_access_sp01_right dl dt {
	float:left;
	color:#222;
	font-size:1.3rem;
}
.page_access_sp01_right dl dd {
	font-size:1.3rem;
	padding:0 0 10px 90px;
}
.page_access_sp01_right dl dd:last-child {
	padding-bottom:0 ;
}

.page_access_sp01_right_left {
	width:100%;
}
.page_access_sp01_right_left h4 {
	color:#222;
	font-size:1.8rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:20px;
	border-left:1px dotted #c00;
	padding-left:24px;
}
.page_access_sp01_right_right {
	width:100%;
}
.page_access_sp01_right_right h4 {
	color:#222;
	font-size:1.8rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:20px;
	border-left:1px dotted #c00;
	padding-left:24px;
}
.page_access_sp01_right_right02 {
	width:100%;
	padding:4px 0 25px;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    margin-top:25px;
    border:1px dotted #ddd;
}
.page_access_sp01_right_right03 {
	position:relative;
	width:100%;
}
.page_access_sp01_right_right02 h5 {
	color:#222;
	font-size:1.6rem;
	letter-spacing:0.05em;
	line-height:1.5;
	font-weight:700;
	margin-bottom:15px;
	margin-top:20px;
	padding-left:36px;
	padding-right:100px;
	background:url(../img/list_mk001.svg) no-repeat 22px 7px;
    background-size:12px 12px;
}
.page_access_sp01_right_right02 p.spopar_logo {
	position:absolute;
	width:70px;
	top:-10px;
	right:20px;
}
.page_access_sp01_right_right02 p.spopar_logo img {
	width:100%;
}
}

/* ############# page_access_sp ############# */


/* ############################## footer ############################## */

@media screen and (min-width:1024px){
.footer_sp {
	width:100%;
	z-index:100;
	background-color:#222;
}
.footer_nav_sp {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
}
.footer_nav_list {
	width:16.666%;
	border-right:1px dotted #444;
	padding:40px 0 120px;
}
.footer_nav_list:first-child {
	border-left:1px dotted #444;
}
.footer_nav_list h5 {
	text-align:center;
	font-size:1.4rem;
	font-weight:400;
	letter-spacing:0.1em;
	margin-bottom:15px;
}
.footer_nav_list h5 a,a:link a:visited {
	color:#fff;
	display:inline-block;
	position: relative;
}
.footer_nav_list h5 a:before {
    content: "";
    position: absolute;
    display: block;
    background-color: #c00;
    width: 0;
    height: 1px;
    bottom: -3px;
    left: 0;
    -webkit-transition: .3s ease 0s;
    transition: .3s ease 0s;
}
.footer_nav_list h5 a:hover {
	color:#c00;
	text-decoration:none;
}
.footer_nav_list h5 a:hover:before {
    width: 100%;
}
.footer_nav_list ul {
	font-size:1.2rem;
}
.footer_nav_list ul li {
	font-weight:400;
	letter-spacing:0.1em;
}
.footer_nav_list ul li a,a:link a:visited {
	display:block;
	color:#fff;
	padding: 5px 20px;
	background:url(../img/list_mk007.svg) no-repeat right 10px center;
    background-size:11px 11px;
}
.footer_nav_list ul li a:hover {
	color:#c00;
	background:url(../img/list_mk007.svg) no-repeat right 7px center;
    background-size:11px 11px;
	background-color:#333;
}
.footer_nav_list ul li img {
	width:19px;
	padding-left:5px;
	padding-bottom:1px;
}

.footer_bottom_sp {
	width:100%;
	background-color:#111;
}
.footer_bottom_sp01 {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin:0 auto;
	padding:25px 0;
}
.footer_bottom_sp01 p.footer_logo {
	width:100px;
}
.footer_bottom_sp01 p.footer_logo img {
	width:100%;
}
.footer_bottom_sp01 p.copy {
	font-size:1.0rem;
	letter-spacing:0.1em;
	color:#f1f1f1;
}
}

@media screen and (min-width:768px) and (max-width:1023px){
.footer_sp {
	width:100%;
	z-index:100;
	background-color:#222;
}
.footer_nav_sp {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin:0 auto;
}
.footer_nav_list {
	width:33.33333%;
	border-right:1px dotted #444;
	padding:40px 0 60px;
}
.footer_nav_list:first-child, .footer_nav_list:nth-child(4) {
	border-left:1px dotted #444;
}
.footer_nav_list:nth-last-child(-n+4) {
	border-top:1px dotted #444;
}
.footer_nav_list h5 {
	text-align:center;
	font-size:1.4rem;
	font-weight:400;
	letter-spacing:0.1em;
	margin-bottom:15px;
}
.footer_nav_list h5 a {
	color:#fff;
}

.footer_nav_list ul {
	font-size:1.2rem;
}
.footer_nav_list ul li {
	font-weight:400;
	letter-spacing:0.1em;
}
.footer_nav_list ul li a {
	display:block;
	color:#fff;
	padding: 5px 20px;
	background:url(../img/list_mk007.svg) no-repeat right 10px center;
    background-size:11px 11px;
}
.footer_nav_list ul li img {
	width:19px;
	padding-left:5px;
	padding-bottom:1px;
}

.footer_bottom_sp {
	width:100%;
	background-color:#111;
}
.footer_bottom_sp01 {
	width:92%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	margin:0 auto;
	padding:20px 0;
}
.footer_bottom_sp01 p.footer_logo {
	width:80px;
}
.footer_bottom_sp01 p.footer_logo img {
	width:100%;
}
.footer_bottom_sp01 p.copy {
	font-size:1.0rem;
	letter-spacing:0.1em;
	color:#f1f1f1;
}
}

/* ############################## footer ############################## */


/* ############################## class style ############################## */

@media screen and (min-width: 768px){
.fadein {
    opacity : 0;
    transform : translate(0, 20px);
    transition : all 1000ms;
    }
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
.fadein01 {
    opacity : 0;
    transform : translate(0, -50px);
    transition : all 1000ms;
    }
.fadein01.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
.fadein02 {
    opacity : 0;
    transform : translate(-50px, 0);
    transition : all 1000ms;
    }
.fadein02.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
.fadein03 {
    opacity : 0;
    transform : translate(-30px, 0);
    transition : all 1000ms;
    }
.fadein03.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


.b_none {
	border:none !important;
}
.right {
	text-align:right;
}
.center {
	text-align:center;
}
.red001 {
color:#c00;
}
.red002 {
color:#c00;
font-weight:500;
}
.red003 {
color:#c00;
font-weight:700;
}

.black001 {
color:#111;
}
.black002 {
color:#111;
font-weight:500;
}
.black003 {
color:#111;
font-weight:700;
}

.btn_style01 {
    text-align: center;
    width: 100%;
}
.btn_style01 a, a:link a:visited {
	position:relative;
	display: block;
    text-decoration: none;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    color: #fff;
    font-size: 1.8rem;
    font-weight:500;
    line-height:1.0;
    padding: 26px 10px;
    margin: 0 auto;
    background:url(../img/list_mk002.svg) no-repeat right 15px center;
    background-size:16px 16px;
    background-color:#c00;
	transition: all .5s;
	letter-spacing:0.05em;
	z-index: 1;
	overflow:hidden;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
}
.btn_style01 a:hover {
	color:#fff;
}
.btn_style01 a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content: '';
  background-color: #111;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .5s;
}
.btn_style01 a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.btn_style01 img {
	width:18px !important;
	margin-left:6px;
	vertical-align:middle;
	padding-bottom:4px;
	box-shadow: none !important;
	border: none !important;
}

.sp {
	display:none;
}
}

/* ############################## class style ############################## */

