@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;
}
*{
    min-height: 0;
    min-width : 0;
}
#bl{
    padding: 0;
    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: #111;
    -webkit-text-size-adjust: 100%;
	overflow: hidden;
	background: linear-gradient(90deg, #111 0%, #111 3.5%, #fff 3.5%, #fff 100%);
}
#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 .center {
	text-align: center;
}

.f-en {font-family: aktiv-grotesk, sans-serif;}
@media only screen and (max-width: 768px)  {
	#bl {
		font-size: 11px;
	}
}

/** header
****************************************/
#bl_header {
	width: 88%;
    margin: 0 4% 9% auto;
	padding-top: 5%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
#bl_header div:nth-of-type(1) {
	width: 26%;
}
#bl_header div:nth-of-type(2) {
	width: 72%;
}
#bl_header div:nth-of-type(2) img {
	width: 40%;
    margin: 0 0 0 auto;
    display: block;
}
#bl_header div:nth-of-type(2) span {
	margin-top: 6%;
    display: block;
	text-align: right;
    font-size: 6px;
    line-height: 1.4;
	letter-spacing: .2px;
}

@media only screen and (min-width: 769px)  {
	#bl_header {
		padding-top: 40px;
        width: 84%;
        max-width: 1100px;
        margin: 0 auto 80px;
		align-items: center;
	}
	#bl_header div:nth-of-type(1) {
		width: 20%;
		max-width: 200px;
	}
	#bl_header div:nth-of-type(2) {
		width: 40%;
        max-width: 460px;
	}
	#bl_header div:nth-of-type(2) img {
		width: 46%;
	}
	#bl_header div:nth-of-type(2) span {
		margin-top: 50px;
		font-size: 9px;
		line-height: 1.4;
		letter-spacing: .5px;
	}
}
/** contents
****************************************/
#bl_contents {
	width: 96.5%;
    margin: 0 0 0 auto;
    padding-bottom: 18%;
    border-bottom: solid 1px #111;
}
#bl_contents section {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	width: 92%;
	margin: 0 auto;
}
#bl_contents section .block .item {
	position: relative;
}
#bl_contents section .block {
	width: 32%;
}
#bl_contents section .block .item .more {
	position: absolute;
    width: 9%;
    top: 2.5%;
    right: 3%;
}
@media only screen and (min-width: 769px)  {
	#bl_contents {
		width: 84%;
        max-width: 1100px;
        margin: 0 auto 0px;
        padding-bottom: 200px;
        border-bottom: none;
	}
	#bl_contents section {
		width: 100%;
	}
	#bl_contents section .block {
		width: 32%;
        margin-bottom: 1.5%;
	}
}

/*モーダル*/
.remodal {
	position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 0 0 12%;
    transform: translate3d(0, 0, 0);
    color: #111;
    background: linear-gradient(90deg, #111 0%, #111 3.5%, #fff 3.5%, #fff 100%);
    hashTracking: false;
    text-size-adjust: 100%;
	outline: none;
}
.remodal img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
.modal-body {
	position: relative;
    
}
.modal-body strong {
	position: absolute;
    top: 3%;
    right: 5%;
    width: 7%;
}
.modal-body strong img{
	z-index: 999;
}
.modal-content {
	position: relative;
}
.modal-content .look {
	width: 80%;
    margin: 0 8.5% 8% auto;
	padding-top: 10%;
    float: none;
    position: relative;
}
.modal-content .midttl {
	position: absolute;
	width: 30%;
	top: 0;
	right: 0;
	left: 0;
	margin: -4% auto 0;
}
.modal-content .item_box {
    width: 80%;
    margin: 0 8% 0 auto;
    text-align: left;
}
.modal-content .item_box .child {
	display: flex;
    justify-content: space-between;
    align-items: end;
    margin-bottom: 2%;
    padding-bottom: 2%;
    border-bottom: solid 1px #111;
}
.modal-content .item_box .child .name {
	font-size: 12px;
	line-height: 1.7;
}
.modal-content .item_box .child .name span {
	display: block;
	font-size: 80%;
	color: #717171;
}
.modal-content .item_box .child .nolink {
	font-size: 9px !important;
    color: #acacac !important;
}
.modal-content .item_box .child div:nth-of-type(2) {
	width: 30%; 
    padding-bottom: 2%;
    text-align: center;
}
.modal-content .item_box .child div:nth-of-type(2) a {
	 text-decoration: none;
    font-size: 12px;
    color: #111;
    text-align: right;
    display: block;
    margin: 0 10% 0 0;
}
.remodal-wrapper {
    position: fixed;
    z-index: 10000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    overflow: auto;
    text-align: center;
    -webkit-overflow-scrolling: touch;
}

@media only screen and (min-width: 769px)  {
	    .remodal {
			width: 100%;
			height: fit-content;
		}
	   .modal-content{
		   width: 80%;
		  max-width: 1000px;
		   margin: 0 auto;
		   padding: 5% 0;
		}
		.remodal-close {
		   top: 2%;
		   right: 5%;
		   margin-top: 25px;
		}
	    .modal-content .header_top {
		   margin: 3% 0px 0px;
	    }
	    .modal-body strong {
			top: 5%;
			right: 5%;
			width: 48px;
	    }
	    .modal-content .modal-content-inner {
			display: flex;
			align-items: center;
			justify-content: space-between;
	    }
		.modal-content .look{
			width: 46%;
			margin: 0;
			padding: 0;
		}
		.modal-content .item_box {
			width: 45%;
			margin: 0;
		}
	    #bl_contents section .block .item .more {
			width: 7%;
	    }
}

/** collaboration
****************************************/
#bl .collaboration {
	width: 100%;
    background: #fff;
    padding: 10% 0;
    border-bottom: solid 1px #111;
	text-align: center;
}
#bl .collaboration .inner div {
	position: relative;
}
#bl .collaboration img:nth-of-type(1) {
	width: 36%;
    position: absolute;
    z-index: 2;
    top: 23%;
    bottom: 0;
    left: 6%;
}
#bl .collaboration img:nth-of-type(2) {
	display: block;
	width: 65%;
	margin: 0 0 0 auto;
}
#bl .sub-text {
	width: 80%;
	margin: 4% auto 0;
}
#bl .sub-text b {
	display: block;
	font-size: 130%;
}

@media only screen and (min-width: 769px)  {
	#bl .collaboration {
		border-top: solid 1px #111;
		padding: 120px 0;
		font-size: 12px;
	}
	#bl .collaboration .inner {
		 width: 80%;
		max-width: 780px;
		margin: 0 auto;
	}
	#bl .sub-text {
		width: 80%;
		max-width: 780px;
		margin: 4% auto 0;
	}
	
}



/** popup
****************************************/
#bl .popup {
	width: 100%;
    background: #fff;
    padding: 10% 0;
}
#bl .popup .popup-ttl {
	text-align: center;
	color: #5E5E5E;
}
#bl .popup .popup-ttl img {
	width: 30%;
	margin: 0 auto 2%;
}
#bl .popup .about {
	background: #ededed;
    padding: 8% 5%;
    width: 74%;
    margin: 8% auto 0;
    font-size: 10px;
}
#bl .popup .about .vein {
	display: block;
    width: 26%;
    margin: 0 auto 6%;
}
#bl .popup .about .link {
	width: 76%;
    margin: 8% auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#bl .popup .about .link div {
	width: 48%;
	display: flex;
    justify-content: space-evenly;
    align-items: center;
}
#bl .popup .about .link div img {
	width: 16%;
}
#bl .popup .about .link div a {
	text-decoration: underline;
}
#bl .popup .popup-subttl {
	width: 66%;
    margin: 10% auto 6%;
    display: block;
}


@media only screen and (min-width: 769px)  {
	#bl .popup .inner {
		width: 80%;
		max-width: 780px;
		font-size: 12px;
		margin: 0 auto;
		background: #fff;
	}
	#bl .popup .popup-ttl img {
		width: 26%;
		max-width: 160px;
		margin: 0 auto 10px;
	}
	#bl .popup .about .vein {
		width: 23%;
		max-width: 160px;
		margin: 0 auto 34px;
	}
	#bl .popup .popup-subttl {
		width: 52%;
		max-width: 300px;
		margin: 10% auto 6%;
	}
	#bl .popup .about {
		font-size: 12px;
		width: 70%;
        max-width: 680px;
        margin: 80px auto 0;
	}
	#bl .popup .about .link {
		width: 50%;
		margin: 4% auto 0;
	}
}



/** footer
****************************************/
#bl .bl_footer {
	padding: 5% 0 8%;
	border-top: solid 1px #111;
	border-bottom: solid 1px #111;
	background: #fff;
}
#bl .bl_footer .logo {
	display: block;
	margin: 5% auto 8%;
	width: 36%;
}
#bl .bl_footer .links {
	display: block;
	text-align: center;
	text-decoration: underline;
	margin-bottom: 2%;
}
#bl .bl_footer .links:nth-of-type(2) {
	margin-bottom: 0%;
}
#bl .copy {
	text-align: center;
	font-size: 8px;
	line-height: 2.5;
	letter-spacing: .8px;
	background: #fff;
}
@media only screen and (min-width: 769px)  {
	#bl .bl_footer {
		padding: 60px 0 60px;
	}
	#bl .bl_footer .logo {
		margin: 0px auto 60px;
		width: 32%;
		max-width: 240px;
	}
}
/** js
****************************************/
#bl .anim {
	opacity: 0;
	clip-path: inset(2.5%);
  -webkit-clip-path: inset(2.5%);
	transform: translateY(20px);
    transition: opacity 0.5s ease-out, 
  clip-path 0.5s ease-out, 
 -webkit-clip-path 0.5s ease-out, transform 0.5s ease-out; 
	will-change: opacity, clip-path, transform;
}
#bl .anim.ac {
	opacity: 1;
	clip-path: inset(0);
  -webkit-clip-path: inset(0);
  transform: translateY(0);
}
#bl .anim:nth-of-type(1) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(2) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(3) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(4) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(5) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(6) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(7) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(8) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(9) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(10) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(11) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(12) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(13) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(14) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(15) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(16) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(17) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(18) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(19) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(20) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(21) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(22) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(23) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(24) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(25) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(26) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(27) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(28) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(29) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(30) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(31) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(32) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(33) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(34) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(35) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(36) {
	transition: 0.8s all 0.6s ease;
}
#bl .anim:nth-of-type(37) {
	transition: 0.8s all 0.2s ease;
}
#bl .anim:nth-of-type(38) {
	transition: 0.8s all 0.4s ease;
}
#bl .anim:nth-of-type(39) {
	transition: 0.8s all 0.6s ease;
}
#bl .all {
	text-align: center;
	display: block;
	line-height: 3.4;
	background: #111;
	color: #fff;
	width: 70%;
	margin: 8% auto 0;
	font-size: 14px;
}
@media only screen and (min-width: 768px)  {
	#bl .all {
		line-height: 3.6;
		width: 300px;
		margin: 40px auto 0;
	}
}

/** view
****************************************/
.spview {
	display: block;
}
.pcview {
	display: none;
}
@media only screen and (min-width: 768px)  {
     .spview {
		display: none;
	}	
	.pcview {
		display: block;
	}
}