@charset "UTF-8";
/* CSS Document */
body{margin: 0px !important;}
h1,h2,h3,h4,h5,h6{margin: 0;}
ul {
    display: block;
    list-stslideyle-type: disc;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}
#bl{
    font-family: yu-gothic-pr6n, sans-serif;
    margin: 0 auto;
    line-height: 2.0;
    font-size: 11px;
    letter-spacing: 1px;
	width: 100%;
    box-sizing: border-box;
    color: #2b2b2b;
	background: #efefef;
    -webkit-text-size-adjust: 100%;
	padding-bottom: 12%;
}
#bl a {
	text-decoration: none;
	color: #2b2b2b;
}
#bl p {
    margin: 0;
}
#bl　a:hover {
	opacity: 1;
}
#bl .clear{
	clear: both;
}
#bl img{
    width: 100%;
    line-height: 0;
}
#bl ul,#bl li {
	list-style: none;
	padding: 0;
	margin: 0;
}
#bl .f-en {
	/*/font-family: "ivymode", sans-serif;/*/
	font-family: aktiv-grotesk, sans-serif;
}

@media only screen and (min-width: 769px)  {
	#bl {
		font-size: 12px;
		padding-bottom: 0%;
		background: #eee;
	}
}
/***************************************************
                bl_header
***************************************************/
#bl #bl_header {
	width: 100%;
    margin: 0 auto;
	border-top: solid 8px #383da6;
    border-bottom: solid 8px #383da6;
	padding: 2% 0;
}
#bl #bl_header .main {
	width: 100%;
    position: relative;
    margin: 8% 0;
}
#bl #bl_header .main .top {
	position: relative;
}
#bl #bl_header .main .top .img {
	position: absolute;
	display: block;
}
#bl #bl_header .main .top .img:nth-of-type(1) {
	position: relative;
	width: 43%;
	padding: 0% 0 51% 6%;
	transition: 1.5s all 0.9s ease;
}
#bl #bl_header .main .top .img:nth-of-type(2) {
    width: 38%;
	top: 8%;
	right: 8%;
	transition: 1.5s all 0.6s ease;
}
#bl #bl_header .main .top .img:nth-of-type(3) {
    width: 32%;
	bottom: 0%;
	left: 18%;
	transition: 1.5s all 0.3s ease;
}
#bl #bl_header .main .top .img:nth-of-type(4) {
    width: 39%;
	bottom: 4%;
	right: 6%;
	transition: 1.5s all 1.2s ease;
}
#bl #bl_header .main .top .ttl {
	position: absolute;
	width: 74%;
	top: 36%;
	right: 0;
	left: 0;
	margin: auto;
}
#bl .read {
        padding: 8% 0 0%;
    text-align: center;
    font-size: 11px;
}
#bl .read p {
    margin-bottom: 2%;
}

@media only screen and (min-width: 769px)  {
	#bl #bl_header {
		width: 30%;
        margin: 0 auto 0 0;
        position: sticky;
		top: 0;
        height: 98vh;
        border-top: none;
        border-bottom: none;
	}
	#bl #bl_header .inner {
		position: absolute;
        width: 100%;
        top: 48%;
        left: 50%;
        padding: 4% 0;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        border-top: solid 8px #383da6;
        border-bottom: solid 8px #383da6;
	}
	#bl #bl_header .main {
		margin: 12% 0;
	}
	#bl #bl_header .main .top .ttl{
		width: 78%;
		max-width: 300px;
		top: 38%;
	}
	
}
/***************************************************
                content
***************************************************/
#bl #content {
	 margin: 10% 0 0%;
}
@media only screen and (min-width: 769px) {
	#bl #content {
		width: 70%;
		margin: -98.2vh 0 0 auto;       
		padding-bottom: 5%;
	}
}
#bl #content section {
	display: flex;
    height: inherit;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
	width: 90%;
	margin: 0 auto;
	border-top: solid 2px #383da6;
	border-left: solid 2px #383da6;
	border-right: solid 2px #383da6;
}
#bl #content section .box {
	width: 49.7%;
	height: 67.1vw;
    position: relative;
	border-bottom: solid 2px #383da6;
}
#bl #content section .box:nth-of-type(odd) {
	border-right: solid 2px #383da6;
}
#bl #content section .box:nth-of-type(12) {
	border-right: solid 2px #383da6;
}
#bl #content section .box:nth-of-type(13) {
	border-right: none;
}
#bl #content section .box:nth-of-type(14) {
	border-right: solid 2px #383da6;
}
#bl #content section .box:nth-of-type(15) {
	border-right: none;
}
#bl #content section .box:nth-of-type(16) {
	border-right: solid 2px #383da6;
}
#bl #content section .box:nth-of-type(17) {
	border-right: none;
}
#bl #content section .box a .slide3 {
	width: 33%;
}
#bl #content section .box a .slide3 img {
	display: block;
	position: absolute;
	opacity: 0;
	animation: slideAnime3 6s ease infinite;
}
#bl #content section .box .text {
	position: absolute;
	left: 3%;
	top: 3%;
	writing-mode: vertical-rl;
	font-family: aktiv-grotesk, sans-serif;
	color: #383da6;
	font-size: 6.9px;
	letter-spacing: .4px;
	line-height: 1.5;
}
#bl #content section .box .more {
	position: absolute;
	right: 4%;
	bottom: 3%;
	width: 7%;
}
#bl #content section .box a .slide3 img:nth-of-type(1) {animation-delay: 0s}
#bl #content section .box a .slide3 img:nth-of-type(2) {animation-delay: 2s}
#bl #content section .box a .slide3 img:nth-of-type(3) {animation-delay: 4s}
@keyframes slideAnime3 {
   0% { opacity: 0 }
   1% { opacity: 1 }
  33% { opacity: 1 }
  34% { opacity: 0 }
 100% { opacity: 0 }
}

@media only screen and (min-width: 769px) {
	#bl #content section {
		border-right: none;
	}
	#bl #content section .box {
		width: 33.0%;
		height: 31.2vw;
	}
	#bl #content section .box {
		border-right: solid 2px #383da6;
	}
	#bl #content section .box .more {
		right: 3%;
		bottom: 2%;
		width: 5%;
	}
	#bl #content section .box .text {
		font-size: 8px;
        bottom: 1%;
	}
	#bl #content section .box:nth-of-type(13) {
		border-right: solid 2px #383da6;
	}
	#bl #content section .box:nth-of-type(15) {
		border-right: solid 2px #383da6;
	}
}
#bl #content .all {
	width: 80%;
    display: block;
    text-align: center;
    background: #111;
    color: #fff;
    font-size: 13px;
    margin: 0 auto;
    line-height: 3.5;
}
#bl #content .logo {
	width: 38%;
	margin: 18% auto 0;
	display: block;
}
@media only screen and (min-width: 768px)  {
	#bl #content .all {
		width: 400px;
	}
	#bl #content .logo {
		width: 180px;
		margin: 8% auto 0;
	}
}
/**************************************************
                js
**************************************************/
#bl .anim {
	opacity: 0;
	transition: 1.5s all 0s;
}
#bl .anim.ac {
	opacity: 1;
	transform: translate(0);
}
/*************************************************
                view
*************************************************/
#bl .spview {
	display: block;
}
#bl .pcview {
	display: none;
}
@media only screen and (min-width: 768px)  {
     #bl .spview {
		display: none;
	}	
	#bl .pcview {
		display: block;
	}
}