@charset "utf-8";

@media screen and (min-width:800px){
	.no-display-pc{
		display:none!important;
	}
}
@media screen and (max-width:799px){
	.no-display-sp{
		display:none!important;
	}
}

/* ==============================================
	CSS reset
=============================================== */
#outer,.inner{
	min-width:1200px;
}

.mainBlock * ,.mainBlock *:before ,.mainBlock *:after {
	box-sizing:border-box;
	text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
}

.mainBlock {
	font-family:'Noto Serif JP',serif;
	line-height:1;
	font-size:16px;
}

.mainBlock section ,.mainBlock aside{
	padding:0;
}
.mainBlock a {
	-webkit-transition:.3s ease;
	transition:.3s ease;
}

@media screen and (max-width:799px) { 
	#outer,.inner{
		min-width:480px;
	}

}

.h2-serif .ja {
	font-family:'Noto Serif JP',serif;
}



/* ============================================
	common
=============================================== */

img{
	max-width:100%;
	height:auto;
	display:inline-block;
	border:0;
}

a{
	cursor:pointer;
	text-decoration:none;
}

h1,p{
	margin:0;
}

em {
	font-style: normal
}

strong {
    font-weight: normal;
}

.tel-link a{
	pointer-events: auto;
}

.flex{
    display: flex;
    justify-content: center;
    align-items: center;
}

.bny-all-center-full{
	width:100%;
	max-width:100%;
	margin:0 auto;
}

.bny-all-center-1200{
	width:1200px;
	max-width:100%;
	margin:0 auto;
}

.bny-all-center-1000{
	width:1000px;
	max-width:100%;
	margin:0 auto;
}

dl,dt,dd{
	display: block;
	margin: 0;
	padding: 0;
}

header,section,footer{
	max-width: 100%;
}

.h2-serif .en {
    font-size: 300%;
}

.h2-serif .ja {
    font-size: 220%;
}

.bny-name{
	font-size:320%;
}

.bny-name2{
	font-size: 150%;
	display: block;
	padding: 0.5em 0.5em 0;
}

.h2-serif {
    background-image: url(images/bunny/underbar.png);
    background-repeat: no-repeat;
    background-position: 50% 100%;
    background-size: contain;
    padding-bottom: 1.5em;
    text-align: center;
}

/* ==============================================
	common sp
=============================================== */

@media screen and (max-width:799px){	
		.sp-LR15 {
			padding-left:15px !important;
			padding-right:15px !important;
		}
		.sp-LR15.ex{
			padding-left:0 !important;
			padding-right:0 !important;
		}

		.sp-L15 {
			padding-left:15px !important;
		}
		
		.sp-R15 {
			padding-right:15px !important;
		}

		.h2-serif .en {
			font-size: 220%;
		}

		.h2-serif .en.ex {
			font-size: 160%;
		}

		.h2-serif .ja {
			display: block;
			font-size: 130%;
			padding: 0.5em 0 0;
		}

		.bny-name{
			font-size:320%;
		}
		
		.bny-name2{
			font-size: 150%;
			display: block;
			padding: 0.5em 0.5em 0;
		}
	}

/* ==================================
header
================================== */
.bny-fv{
}

.bny-parallax {
    background: url('images/bunny/fv_bg4.webp');
    background-attachment: fixed;
    background-position:50% 60px;
    background-repeat: no-repeat;
    text-align: center;
    height: 960px;
    width: 100%;
    min-width:1200px;
}

.bny-parallax-img {
}

/* =================
header sp
==================== */

@media screen and (max-width:799px){	
	.bny-fv{
	}
	.bny-parallax {
	    min-width:auto;
	    height:340px;
	    background-size: auto 340px;
	}
	.bny-parallax-img img {
	    height:340px;
	}

	.bny-parallax-text1 {
		padding-top: 12em;
	}
	
	.bny-parallax-text2 {
		padding-top: 22.5em;
	}
	
	.bny-parallax-text3 {
		padding-top: 2.4em;
	}
}

/* ==================================
contents1
================================== */
#contents1 .bny-caption-outer {
	padding-top: 5em;
	padding-bottom: 6em;
}
#contents1 .h2-serif .en {
	display:block;
}


#contents1 .innerContents {
    padding: 2em 5% 0;
	font-size: 130%;
	line-height: 2.4;
	text-align: center;
}

#contents1 .bny-caption-outer:nth-child(1){
	background:url(images/bunny/bunny001.webp) 0% 100% no-repeat;
	background-size:contain;
	padding-left:36em;
}

#contents1 .bny-caption-outer:nth-child(2){
	background-color: #D8E0FF;
}

#contents1 .bny-production-cover{
	padding-top:3em;
}

#contents1 .bny-pro-cover1{
	margin: auto;
	padding: 1em;
	line-height:1.1;
	background-color: #fbb;
	font-size: 220%;
	font-weight: bold;
	text-align: center;

	display:flex;
	text-align:center;
	justify-content:center;
	align-items:center;
}
#contents1 .bny-pro-cover1 > span{
	padding:0 0.5em;
}

#contents1 .bny-pro-cover1 .sub{
	font-size: 60%;
}

.bny-production{
	display:block;
	font-size: 180%;
	width: 60%;
	color: #fff;
	margin: auto;
	text-align: center;
	padding: 1em;
	border-radius: 0.5em;
	box-shadow: 0 4px 0 0 #333;
}

.bny-production.c2{
	background-color: #329713;
}
.bny-production.c3{
	background-color: #fa0;
}
.bny-production.c4{
	background-color: #f6c;
}


.bny-pro-cover{
	padding-top: 4em;
}

#bijou .button {
	padding:4em 1em 6em;
}


/* ======================
contents1 SP
========================= */

@media screen and (max-width:799px){
	#contents1 .bny-caption-outer:nth-child(1){
		background-position:60% 100%;
		background-size:70%;
	}
	#contents1 .bny-caption-outer:nth-child(1) .innerContents {
		padding-bottom:16em;
	}

	#contents1 .h2-serif {
		background-size: auto;
	}

	#contents1 .innerContents {
		padding: 2em 0 0;
		line-height: 2;
	}

	#contents1 .bny-caption-outer {
		padding-top: 3em;
		padding-bottom: 4em;
	}

	#contents1 .bny-pro-cover1{
		padding:1em 0;
		font-size: 180%;
		flex-direction:column;
	}
	#contents1 .bny-pro-cover1 .sub {
		font-size:70%;
	}

	#contents1 .bny-pro-cover1 > span {
		width:100%;
		padding:0.3em 0;
	}

	#contents1 .bny-production1 {
		background-color: pink;
		font-size: 150%;
		width: 90%;
		margin: auto;
		padding: 1em;
		text-align: center;
		font-weight: bold;
		line-height: 1.3;
	}

	.bny-production.c2{
		line-height: 1.3;
	}

	.bny-production {
		font-size: 150%;
		width: 80%;
		padding: 1em;
	}
}

/* ==================================
contents2
================================== */

/* caption */
#contents2 .bny-caption-cover-out {
	background-color: #efedee;
}

#contents2 .bny-caption-cover {
	padding-top: 4em;
	padding-bottom: 4em;
}

#contents2 .h2-serif {
	background-image: url(images/bunny/bar_kurukuru.png);
	background-size: auto;
}

/* contents */
#contents2 .bny-order-flex-outer:nth-child(1) {
    background-color: #efedee;
}

#contents2 .bny-order-flex-outer:nth-child(3) {
    background-color: #b4aca9;
	color: #fff;
}

#contents2 .bny-order-flex-outer{
	position: relative;
}

#contents2 .bny-order-flex-outer:nth-child(1)::before,#contents2 .bny-order-flex-outer:nth-child(2)::before{
	content: "";
    display: inline-block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -100px;
	background-repeat: no-repeat;
	background-position:50% 100%;
	background-size:cover;
	width: 144px;
	height: 178px;
	margin: auto;
	z-index: 2;
	pointer-events: none;
}

#contents2 .bny-order-flex-outer:nth-child(1)::before{
	background-image: url(images/bunny/arrow01.png);
}

#contents2 .bny-order-flex-outer:nth-child(2)::before{
	background-image: url(images/bunny/arrow02.png);
}

#contents2 .bny-order-flex-cover{
	background-repeat: no-repeat;
	background-position:100% 50%;
	background-size:contain;
	padding: 5em 50% 8em 0;
}

#contents2 .bny-order-flex-outer:nth-child(1) .bny-order-flex-cover{
	background-image: url(images/bunny/bunny02.webp);
	background-position: 95% 50%;
}

#contents2 .bny-order-flex-outer:nth-child(2) .bny-order-flex-cover{
	background-image: url(images/bunny/bunny03c.webp);
    background-position: 15% 35%;
    background-size:40%;
    padding: 0em 0em 8em 50%;
}

#contents2 .bny-order-flex-outer:nth-child(3) .bny-order-flex-cover{
	background-image: url(images/bunny/bunny07.webp);
	background-position:100% 50%;
	padding:5em 0 3em;
}
#contents2 .bny-order-flex-outer:nth-child(3) .bny-order-flex-cover .bny-order-flex{
	padding-right:50%;
	padding-bottom:2em;
}
#contents2 .bny-caption{
	padding-top:2em;
	display: flex;
	justify-content:flex-start;
	align-items:center;
}

#contents2 .bny-order-flex-outer:nth-child(2) .bny-caption {
    justify-content: flex-end;
	padding-top: 5em;
}

#contents2 .bny-number{
	font-size:400%;
}

#contents2 .bny-order-flex-outer:nth-child(1) .bny-number{
	color: #999798;
}

#contents2 .bny-order-flex-outer:nth-child(2) .bny-number{
	color: #bfbdbe;
}

#contents2 .bny-caption-text{
	font-size: 180%;
	display: block;
	padding:0.6em 0.5em 0;
}

#contents2 .bny-text{
	padding-top: 2em;
	font-size: 135%;
	line-height: 1.8;
}

#contents2 .bny-button-cover{
    padding-top: 4em;
    padding-left: 1em;
    padding-right: 1em;
}

#contents2 .bny-button {
    background-image: url(images/bunny/button_bg.png);
    background-repeat: repeat;
    background-position: 50% 0%;
    background-size: auto;
    width: 80%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 135%;
    border-radius: 25px;
}

@media screen and (min-width:800px){
	#contents2 .bny-button:hover,#contents2 .inquiry:hover{
		box-shadow:0 0 0 3px #ffb149;
	}

	.bny-production:hover{
		box-shadow: 0 0 0 0 transparent;
		transform: translateY(6px);
	}
}

#contents2 .bny-order-flex-outer:nth-child(2) .bny-button{
	margin-left:auto;
}

#contents2 .bny-text2{
	padding-top: 2em;
	font-size: 135%;
	line-height: 1.6;
	text-align: center;
	display: inline-block;
}

#contents2 .inquery-cover {
    padding-top: 2em;
}

#contents2 .inquiry{
    background-color: rgba(0,0,0, 0.8);
    width: 50%;
    padding: 1em;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}

/* ======================
contents2 SP
========================= */

@media screen and (max-width:799px){

	#contents2 .h2-serif {
		background-size: 100%;
	}
	.h2-serif, #mainContents .h2-serif{
		margin-bottom:0;
		border-bottom:0 none;
	}

	#contents2 .bny-caption-cover {
		padding-bottom: 0;
	}

	#contents2 .bny-order-flex-outer:nth-child(2) .bny-caption {
		padding-top: 6em !important;
		justify-content: center;
	}

	#contents2 .bny-order-flex-outer:nth-child(3) .bny-caption {
		padding-top: 6em !important;
		justify-content: center;
	}

	#contents2 .bny-order-flex-outer:nth-child(2) .bny-caption {
		justify-content: flex-start;
		padding-left:8em;
	}

	#contents2 .bny-order-flex-outer:nth-child(1) .bny-order-flex-cover {
		background-position: 50% 26%;
		background-size: 80%;
		padding:0 0 0 0;
	}

	#contents2 .bny-order-flex-outer:nth-child(2) .bny-order-flex-cover {
		background-position: -40% 105%;
		background-size: 70%;
		padding: 0 0 0 0;
	}

	#contents2 .bny-order-flex-outer:nth-child(3) .bny-order-flex-cover {
		background-repeat: no-repeat;
		background-position: 50% 26%;
		background-size: 80%;
		padding: 0 0 3em;
	}

	#contents2 .bny-order-flex-outer:nth-child(3) .bny-order-flex-cover .bny-order-flex{
		padding:0;
	}

	#contents2 .bny-text {
		padding-top: 22em;
		padding-bottom: 6em;
		font-size: 120%;
	}

	#contents2 .bny-text2{
		display:block;
	}

	#contents2 .bny-order-flex-outer:nth-child(3) .bny-text {
		padding-top: 21em;
		padding-bottom:0;
	}

	#contents2 .bny-order-flex-outer:nth-child(2) .bny-text {
		padding-top: 2em;
		padding-left: 8em;
	}

	#contents2 .bny-button-cover {
		padding-top: 2em;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 7em;
	}

	#contents2 .bny-order-flex-outer:nth-child(3) .bny-button-cover{
		padding-bottom: 2em;
	}

	#contents2 .bny-button {
		margin: auto;
		width: 70%;
	}

	#contents2 .inquiry {
		width: 70%;
		padding: 1em;
		font-size: 120%;
	}
}


/* ==================================
contents3
================================== */

#contents3 .bny-bg {
	background-color: #efefef;
}

#contents3 .bny-caption-outer {
	padding-top: 4em;
}

#contents3 .bny-caption-wrapper {
	display: flex;
    justify-content: center;
    align-items: center;
}

/* left */
#contents3 .bny-caption-cover {
	width: 50%;
}

/* right */
#contents3 .linkButtons{
    width: 50%;
    text-align:center;
    padding:0;
}

#contents3 .bny-linkButton-a{
    display: block;
}

#contents3 .bny-linkButton-c{
	background-image: url(images/bunny/button_bg.png);
    background-repeat: repeat;
    background-position: 50% 0%;
    background-size: auto;
    font-size: 135%;
}

#contents3 .bny-linkButton-c:hover {
	box-shadow:0 0 0 3px orange;
}



#gallery-slider{
	padding:4em 0 6em;
}


/* ======================
contents3 SP
========================= */

@media screen and (max-width:799px){
	#contents3 .bny-name{
		font-size:250%;
	}

	#contents3 .bny-caption-cover {
		width: 100%;
		padding-left: 0em;
	}

	#contents3 .bny-caption-outer {
		text-align: center;
	}

	#contents3 .bny-caption-wrapper {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}

	#contents3 .linkButtons {
		padding-top: 3em;
		width: 100%;
	}

	#contents3 .bny-linkButton-c {
		margin: auto;
		width: 70%;
	}
}

/* ==================================
contents4
================================== */

/* contents */
#contents4 .bny-order-flex-outer:nth-child(2) {
	background-color: #f6f4f5;
}

#contents4 .bny-order-flex-outer{
	position: relative;
}

#contents4 .bny-order-flex-cover{
	background-repeat: no-repeat;
	background-position:100% 100%;
	background-size:contain;
	padding: 5em 50% 5em 0;
}

#contents4 .bny-order-flex-outer:nth-child(1) .bny-order-flex-cover{
	background-image: url(images/bunny/bunny_01.webp);
	background-position:0% 50%;
	background-size:48%;
    padding: 5em 0em 5em 45%;
}

#contents4 .bny-caption{
	text-align: right;
	padding-bottom:3em;
}

#contents4 .news-frame {
	line-height:1.6;
}
#contents4 .news-frame li{
	padding:0.5em 1em;
}

#contents4 .bny-order-flex-outer:nth-child(2) .bny-caption {
    justify-content: flex-start;
	text-align: left;
}

#contents4 .bny-text-wrapper{
	padding-top: 2em;
	line-height: 1.6;
}

#contents4 .bny-text-cover{
	padding-bottom: 2em;
	line-height: 1.6;
}

#contents4 .bny-text{
	font-size: 135%;
}

#contents4 .bny-text2 {
    padding-top: 0.5em;
}


#contents4 .content-media .bny-order-flex-cover{
	padding:5em 0;
}

#contents4 .cm-frame{
	font-size:110%;
	line-height:1.8;
}


/* ======================
contents4 SP
========================= */

@media screen and (max-width:799px){

	#contents4 .bny-name {
		font-size: 250%;
	}

	#contents4 .bny-name2 {
		text-align: center;
	}

	#contents4 .bny-order-flex-cover {
		padding: 5em 0 5em 0;
	}

	#contents4 .bny-order-flex-outer:nth-child(1) .bny-order-flex-cover {
		background-position: 50% 100%;
		background-size: auto 600px;
		padding: 5em 0 600px;
	}

	#contents4 .bny-caption {
		text-align: center;
	}

	#contents4 .bny-order-flex-outer:nth-child(2) .bny-caption {
		text-align: center;
	}

	#contents4 .bny-text-wrapper {
		background-color: #fff9;
		margin-right: 8em;
	}

	#contents4 .news-frame{
	}

	#contents4 .cm-frame ul{
		width:100%;
		margin:0;
	}
}

/* ==================================
contents5
================================== */

/* youtube */
#contents5 .bny-bg:nth-child(1) {
	background-image: url(images/bunny/youtobe_back.png);
	background-repeat: repeat;
	background-position:50% 0%;
	background-size:auto;
	color: #fff;
}

#contents5 .bny-caption-outer {
	padding-top: 4em;
}

/* instagram */
#contents5 .bny-bg:nth-child(2) {
	background-color: #fff;
}

#contents5 .bny-order-flex-cover{
	background-image: url(images/bunny/maru.webp);
    background-repeat: no-repeat;
    background-position: 100% 50%;
    padding-bottom:4em;
}


#contents5 .bny-insta-flex{
	display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
}

#contents5 .videoFrame{
	padding:4em 0 6em;
}

#contents5 .frameOuter{
	width:60%;
	padding-top:10em;
	padding-right:3em;
}


/* ===================
contents5 SP
====================== */

@media screen and (max-width:799px){

	#contents5 .h2-serif {
		background-size: auto;
	}

	#contents5 .videoFrame iframe{
		max-width:100%;
	}

	#contents5 .bny-order-flex-cover {
		background-position:100% -6em;
	}

	#contents5 .bny-insta-flex {
		width: 100%;
		margin: auto;
		flex-direction:column-reverse;
	}
	#contents5 .bny-insta-flex > img {
		width:60%;
		margin:0 auto;
	}
	#contents5 .frameOuter{
		width:100%;
		padding:0 15px;
	}
}


/* ===================
	announce
====================== */
#announce {
	text-align:center;
	background:#fff8fc;
}
#announce .bny-caption-outer {
	padding:5em 20em 5em 0;
	background: url(images/bunny/bunny00.webp) 100% 100% no-repeat;
	background-size: contain;
}
#announce .h2-serif {
	color:#f69;
	background-size:100% 1px;
	padding-bottom:1em;
}
#announce .h2-serif .en {
	font-size:220%;
}
#announce .innerContents {
	padding-top:2em;
	font-size:110%;
	line-height:1.8;
}
#announce .text2 {
	padding-top:2em;
	font-size:110%;
}
#announce .text p + p {
	padding-top:0.5em;
}
@media screen and (max-width: 799px){
	#announce .bny-caption-outer {
		padding:3em 0;
		background-position:18em 100%;
		background-size:14em;
	}
	#announce .h2-serif .en {
		font-size:130%;
	}
	#announce .innerContents .text:not(.text2) {
		text-align:left;
		padding:0 1em;
	}

	#announce .text2 {
		padding-right:5em;
	}
	#announce .innerContents .flex.top {
		flex-wrap:wrap;
	}
	#announce .innerContents .flex.top > span {
		width:100%;
		text-align:center;
	}
}

#announce .flex.top {
	line-height:1.4;
	align-items:flex-start;
}
#announce .flex.top > .left {
	padding-left:1em;
	text-align:left;
}
#announce .flex.top > .left .small {
	font-size:90%;
}
@media screen and (max-width: 799px){
	#announce .flex.top > .left {
		padding-left:0.5em;
	}
}

#bunnyGallery img {
	display:block;
	width:100%;
}
@media screen and (max-width: 799px){
}

.bunny-collection-section {
	padding:3em 0 !important;
	position:relative;
	background:#f6f4f5;
}
.bunny-collection-section + .bunny-collection-section {
	padding-top:0 !important;
}

.bunny-collection-section img{
	vertical-align:top;
}
.bunny-collection-section .back-flex {
	display:flex;
}
.bunny-collection-section .back-flex > div {
	width:calc(100% / 5);
}

@media screen and (min-width: 800px){
	.bunny-collection-section .fore-flex {
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:66.6%;
		z-index:10;
		display:flex;
		justify-content:center;
		align-items:center;
	}
}
@media screen and (max-width: 799px){
	#outer {
		overflow:initial;
	}
	.bunny-collection-section {
		padding:0 0.5em 0.5em;
	}
	.bunny-collection-section .fore-flex {
		padding:2em 0 1.5em;
		position:sticky;
		top:2em;
	}
	.bunny-collection-section .back-flex {
		flex-wrap:wrap;
	}
	.bunny-collection-section .back-flex > div {
		width:calc(100% / 5);
	}
}






