@charset "UTF-8";
@import url("common.sp.css");

/* ---------------------------------------------------------
	CSS Document video
--------------------------------------------------------- */

#video {
    position: relative;
    padding-bottom: 56.25%;
    margin: 0 auto 30px;
    height: 100%;
    overflow: hidden;
}

video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ---------------------------------------------------------
	CSS Document copy
--------------------------------------------------------- */

#copy h2 {
  margin: 0 15px 20px;
    font-size: 18px;
	color: #0070c0;
}

#copy h3 {
  margin: 0 15px 20px;
    font-size: 16px;
	color: #000;
}

#copy p {
  font-size: 13px;
	text-align: left;
}

#copy #story_01 img {
  margin: 0 auto 40px;
    width: 90%;
}

#copy #story_01 #inner {
    margin: 0 15px 20px;
}

#copy #story_02 img {
  margin: 0 auto 20px;
    width: 90%;
}

#copy #story_02 #inner {
      margin: 0 15px 40px;
}

#copy .story_03 p {
      margin: 0 15px 20px;
}

#copy .story_03 img {
  margin: 0 auto 40px;
    width: 90%;
}

#copy .story_04 {
	margin-bottom: 60px;
}

#copy .story_04 p {
		text-align: center;
        margin: 0 15px 20px;
}

a.btn_12 {
	display: flex;
    justify-content: space-evenly;
    align-items: center;
	text-align: center;
	text-decoration: none;
	width: 300px;
	margin: auto;
	padding: 1rem 4rem 1rem 3rem;
	font-weight: bold;
	background: #0070c0;
	color: #fff;
	border-radius: 100vh;
	position: relative;
	transition: 0.5s;
}
a.btn_12::before {
	content: '';
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
a.btn_12:hover {
	background: #44c6f2;
	color: #fff;
}

/* ---------------------------------------------------------
	CSS Document bnr
--------------------------------------------------------- */

#top_banner {
	margin-bottom: 10vw;
}

#top_banner .section {
	padding: 5vw;
}

#top_banner .series {
	background: #e3f1fa;
}

#top_banner .startup {
	background: #dcf9de;
}

#top_banner .startup h2 {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: 4.5vw;
	color: #20852a;
}

#top_banner ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#top_banner ul li {
	width: 48%;
	margin-bottom: 1em;
}

#top_banner ul a {
	text-decoration: none;
	font-size: 3vw;
	letter-spacing: 0.05em;
	color: #222;
}

/* ---------------------------------------------------------
	CSS Document mnavi
--------------------------------------------------------- */

#mnavi {
	margin-bottom: 40px;
	padding: 40px 0 ;
	border-top: dotted 1px #051739;
	border-bottom: dotted 1px #051739;
}

#mnavi li {
	padding-top: 130px;
	background: url(../images/mnavi_01.png) no-repeat top / auto 119px;
	font-size: 20px;
	color: #333;
	position: relative;
}

#mnavi li a {
	display: inline-block;
	vertical-align: middle;
	padding: 10px 0 10px 35px;
	background: url(../images/mnavi_02.png) no-repeat left / auto 25px;
	text-align: left;
	text-decoration: none;
	line-height: 1.4;
	color: #333;
}

#mnavi li a:hover {
	color: #a00e1d;
}

/* ---------------------------------------------------------
	CSS Document snavi
--------------------------------------------------------- */


#snavi {
	margin: 0 0 40px;
	padding: 0 15px 30px;
	border-bottom: dotted 1px #051739;
	font-size: 0;
}

#snavi li {
	max-width: 320px;
	margin: 0 auto 15px;
	padding-top: 250px;
	background: no-repeat top;
	background-size: 100%;
}

@media only screen and (max-width: 360px) {
#snavi li {
	padding-top: 76%;
}
}

#snavi li:hover {
	opacity: 0.8;
	filter: Alpha(opacity=80);
}

#snavi li.nth1 {
	background-image: url(../images/snavi_01.png);
}

#snavi li.nth2 {
	background-image: url(../images/snavi_02.png);
}

#snavi li.nth3 {
	background-image: url(../images/snavi_03.png);
}

#snavi li.nth4 {
	background-image: url(../images/snavi_04.png);
}


#snavi li.nth5 {
	background-image: url(../images/snavi_05.png);
}

#snavi li.nth6 {
	margin-bottom: 0;
	background-image: url(../images/snavi_06.png);
}


#snavi li a {
	display: block;
	height: 95px;
	background: #fff url(../images/snavi_07.png) no-repeat top;
	background-size: auto 100%;
	text-decoration: none;
	font-size: 21px;
	line-height: 70px;
	color: #fff;
}

#snavi li a span {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.2;
}

/* ---------------------------------------------------------
	CSS Document news
--------------------------------------------------------- */

#news {
	margin-bottom: 40px;
	font-size: 0;
}

#news h2 {
	margin: 0 auto 30px;
	width: 148px;
}

#news .section {
/*	height: 350px;
	overflow: auto;*/
	padding: 0 15px 1px;
	text-align: left;
}

#news .find {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: solid 1px #e0e0e0;
}

#news .find:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: 0;
}

#news .find:hover {
	opacity: 0.8;
	filter: Alpha(opacity=80);
}

#news p {
	display: inline-block;
	vertical-align: top;
	width: 55px;
	margin-right: 15px;
}

#news dl {
	display: inline;
}

#news dt {
	display: inline-block;
	vertical-align: top;
	font-size: 12px;
	line-height: 1.4;
	color: rgba(230, 0, 18, 1);
}

#news dt a {
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 15px;
	color: rgba(0, 112, 192, 1);
}

#news dt span {
	display: block;
	color: rgba(0, 112, 192, 1);
}

#news dd {
	margin-top: 10px;
	font-size: 13px;
	line-height: 1.4;
	color: #333;
}

#news dd span {
	margin-left: 10px;
	text-decoration: underline;
}
