@charset "UTF-8";


/*

	background-repeat: no-repeat;
	background-position: left top;
	background-position: center center;
	background-image: url("../images/dot_pack_alpha.png");
	background-color: transparent;
	background-size: 20px 49px;

	background-color: transparent;

	border-style: solid;
	border-color: transparent;
	border-width: 1px 0px 1px 0px;

	box-sizing: border-box;

	border-radius: 50px;

	text-align: center;
	font-size: 30px;
	line-height: 32px;
	letter-spacing: 0.008em;
	color: #000000;
	font-weight: 400;
	text-decoration: none;

	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;

	position: relative;
	position: absolute;
	top: 0px;
	left: 0px;
	width: auto;
	height: auto;
	z-index: 10000;

	transition-delay: 0s;
	transition-property: all;
	transition-duration: 0.25s;
	transition-timing-function: ease-in-out;

	border-radius: 50px;

	transition: background-color 0.3s ease 0s;




.murecho-<uniquifier> {
	font-family: 'Murecho', sans-serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}




.holtwood-one-sc-regular {
	font-family: 'Holtwood One SC', serif;
	font-weight: 400;
	font-style: normal;
}



// <weight>: Use a value from 100 to 900
// <cursive>: Use a value from 0 to 1
// <uniquifier>: Use a unique and descriptive class name

.bitcount-grid-double-<uniquifier> {
	font-family: 'Bitcount Grid Double', system-ui;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
	font-variation-settings:
		'slnt' 0,
		'CRSV' <cursive>,
		'ELSH' 0,
		'ELXP' 0;
}



@media only screen and ( max-width: 1000px ){


}

*/


html, body {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	-webkit-text-size-adjust: none;
	background-color: #f9f4ee;
}

body {
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center center;
	/*background-image: url("../images/pc_bg01.png");*/
	background-color: #f9f4ee;
	background-size: cover;
}

.default_font_family,
body {
/*
	font-family: 'yu-gothic-pr6n', sans-serif;
	font-weight: 400;
*/
	font-family: 'Murecho', sans-serif;
	font-style: normal;
	font-weight: 500;
}

strong {
	font-weight: 800;
}




@media only screen and ( max-width: 750px ){

}




/* ------------------------------------------------------------------------------------------------ Anchor */




.anchor_pos {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: 0px;
	position: absolute;
	top: -170px;
	left: 0px;
}




@media only screen and ( max-width: 750px ){

	.anchor_pos {
		top: -22vw;
	}

}




/* ------------------------------------------------------------------------------------------------ Default animation */




.anim01_trigger {
}

.anim01_init {
	/*transition: 0.5s;*/
	transition-property: opacity, filter, transform;
	transition-duration: 0.75s;
	transition-timing-function: ease;
	opacity: 0.0 !important;
	/*filter: blur(8px);*/
	transform: scale(1.15);
}

.anim01_start {
	opacity: 1.0 !important;
	/*filter: blur(0px);*/
	transform: scale(1.0);
}




.anim02_init {
	transition-property: opacity, transform;
	transition-duration: 0.75s;
	transition-timing-function: ease;
	opacity: 0.0 !important;
	transform: translateY(-5vh);
}

.anim02_start {
	opacity: 1.0 !important;
	transform: translateY(0vh);
}




.anim_delay0 {
	transition-delay: 0.0s;
}




/* ------------------------------------------------------------------------------------------------ Header */




#kari_header {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: calc( 100% - 25px - 25px );
	height: auto;
	position: fixed;
	top: 18px;
	left: 25px;
	background-color: #6e0f14;
	border-radius: 12px;

	z-index: 20000;
}

#kari_header #kari_header_in {
	margin: 0px 0px 0px 0px;
	padding: 10px 20px 10px 20px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	flex-direction: row;
	align-items: center;
}

#kari_header #kari_header_logo {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	transition: transform 0.3s ease 0s;
	transform: scale(1.0);

	/*transition: transform 0.35s cubic-bezier( 0.18, 0.89, 0.07, 1.69 );*/
	transition: transform 0.3s ease;
}

#kari_header #kari_header_logo:hover {
	/*opacity: 0.5;*/

	transform: scale(1.15);

/*
	animation: 0.35s ease 0.0s 1 alternate headerlogopopupanim;
	animation-fill-mode: forwards;
*/
}

@keyframes headerlogopopupanim {
	0% {
		transform: scale(1.0);
	}
	50% {
		transform: scale(1.3);
	}
	100% {
		transform: scale(1.15);
	}
}

#kari_header #kari_header_logo img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 68px;
}

#kari_header #kari_header_menu {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	flex-direction: row;
	align-items: center;
}

#kari_header #kari_header_menu .kari_header_menu_item {
	margin: 0px 18px 0px 18px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: right;
	font-size: 24px;
	line-height: 24px;
	letter-spacing: 0.1em;
	color: #f09600;
	text-decoration: none;
	transition: color 0.3s ease 0s;
}

#kari_header #kari_header_menu .kari_header_menu_item:hover {
	color: #f6503e;
}

#kari_header #kari_header_menu .kari_header_menu_item small {
	margin: 4px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-size: 14px;
	line-height: 14px;
	font-family: 'Murecho', sans-serif;
	font-weight: 400;
	font-weight: 600;
	text-align: center;
}

#kari_header #kari_header_menu #kari_header_nav_cover {
	margin: 0px 0px 0px 18px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;
}

#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav_button {
	margin: 0px 0px 0px 0px;
	padding: 14px 1.4em 14px 1.4em;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: right;
	font-size: 24px;
	line-height: 24px;
	letter-spacing: 0.1em;
	color: #ffffff;
	text-decoration: none;
	background-color: #f4513b;
	border-style: solid;
	border-color: #ffffff;
	border-width: 0px 0px 0px 0px;
	border-radius: 100px;
	cursor: pointer;
	transition: color 0.3s ease 0s;
}

#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav_button:hover {
	color: #6e0f14;
}



@media only screen and ( max-width: 1660px ){

	#kari_header #kari_header_menu #variable_menu_top {
		display: none;
	}

}

@media only screen and ( max-width: 1550px ){

	#kari_header #kari_header_menu #variable_menu_intro {
		display: none;
	}

}

@media only screen and ( max-width: 1250px ){

	#kari_header #kari_header_menu #variable_menu_staff {
		display: none;
	}

}

@media only screen and ( max-width: 1010px ){

	#kari_header #kari_header_menu #variable_menu_char {
		display: none;
	}

}

@media only screen and ( max-width: 760px ){

	#kari_header #kari_header_menu #variable_menu_book {
		display: none;
	}

}




/*
@media only screen and ( max-width: 960px ){

	#kari_header {
		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;

		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;
	}

	#kari_header #kari_header_in {
		padding: 10px 20px 10px 20px;

		padding: 1.0416vw 2.0833vw 1.0416vw 2.0833vw;
	}

	#kari_header #kari_header_logo img {
		height: 68px;

		height: 7.0833vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item {
		margin: 0px 18px 0px 18px;
		font-size: 24px;
		line-height: 24px;

		margin: 0px 1.875vw 0px 1.875vw;
		font-size: 2.5vw;
		line-height: 2.5vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item small {
		margin: 4px 0px 0px 0px;
		font-size: 14px;
		line-height: 14px;

		margin: 0.4166vw 0px 0px 0px;
		font-size: 1.4583vw;
		line-height: 1.4583vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover {
		margin: 0px 0px 0px 1.875vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav_button {
		padding: 14px 1.4em 14px 1.4em;
		font-size: 24px;
		line-height: 24px;

		padding: 1.4583vw 1.4em 1.4583vw 1.4em;
		font-size: 2.5vw;
		line-height: 2.5vw;
	}

}
*/


/*
@media only screen and ( max-width: 800px ){

	#kari_header {
		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;

		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;
	}

	#kari_header #kari_header_in {
		padding: 10px 20px 10px 20px;

		padding: 1.25vw 2.5vw 1.25vw 2.5vw;
	}

	#kari_header #kari_header_logo img {
		height: 68px;

		height: 8.5vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item {
		margin: 0px 18px 0px 18px;
		font-size: 24px;
		line-height: 24px;

		margin: 0px 2.25vw 0px 2.25vw;
		font-size: 3vw;
		line-height: 3vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item small {
		margin: 4px 0px 0px 0px;
		font-size: 14px;
		line-height: 14px;

		margin: 0.5vw 0px 0px 0px;
		font-size: 1.75vw;
		line-height: 1.75vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover {
		margin: 0px 0px 0px 18px;

		margin: 0px 0px 0px 2.25vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav_button {
		padding: 14px 1.4em 14px 1.4em;
		font-size: 24px;
		line-height: 24px;

		padding: 1.75vw 1.4em 1.75vw 1.4em;
		font-size: 3vw;
		line-height: 3vw;
	}

}
*/




@media only screen and ( max-width: 750px ){

	#kari_header {
		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;

		width: calc( 100% - 25px - 25px );
		top: 18px;
		left: 25px;
		border-radius: 12px;
	}

	#kari_header #kari_header_in {
		padding: 10px 20px 10px 20px;

		padding: 1.3333vw 2.6666vw 1.3333vw 2.6666vw;
	}

	#kari_header #kari_header_logo img {
		height: 68px;

		height: 9.0666vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item {
		margin: 0px 18px 0px 18px;
		font-size: 24px;
		line-height: 24px;

		margin: 0px 2.4vw 0px 2.4vw;
		font-size: 3.2vw;
		line-height: 3.2vw;
	}

	#kari_header #kari_header_menu .kari_header_menu_item small {
		margin: 4px 0px 0px 0px;
		font-size: 14px;
		line-height: 14px;

		margin: 0.5333vw 0px 0px 0px;
		font-size: 1.8666vw;
		line-height: 1.8666vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover {
		margin: 0px 0px 0px 18px;

		margin: 0px 0px 0px 2.4vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav_button {
		padding: 14px 1.4em 14px 1.4em;
		font-size: 24px;
		line-height: 24px;

		padding: 1.8666vw 1.4em 1.8666vw 1.4em;
		font-size: 3.2vw;
		line-height: 3.2vw;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_header {
		width: calc( 100% - 5.2083vw - 5.2083vw );
		top: 3.75vw;
		left: 5.2083vw;
		border-radius: 2.5vw;
	}

}




#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav {
	margin: 0px 0px 0px 0px;
	padding: 70px 50px 40px 50px;
	display: block;
	width: 380px;
	position: absolute;
	top: 50px;
	right: -10px;
	box-sizing: border-box;

	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: center top, center 85px, center bottom;
	background-image: url("../images/header_menu_bg01.png"), url("../images/header_menu_bg02.png"), url("../images/header_menu_bg03.png");
	background-color: transparent;
	background-size: 100% 85px, 100% calc( 100% - 85px - 60px ), 100% 60px;

	display: block;
	opacity: 0.0;
}

#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav .kari_header_nav_item {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: right;
	font-size: 24px;
	line-height: 50px;
	letter-spacing: 0.1em;
	color: #ffffff;
	text-decoration: none;
	transition: color 0.3s ease 0s;
}

#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav .kari_header_nav_item:hover {
	color: #6e0f14;
}




@media only screen and ( max-width: 640px ){

/*
	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav {
		padding: 70px 50px 50px 50px;
		width: 380px;
		top: 50px;
		right: -10px;
		background-position: center top, center 85px, center bottom;
		background-size: 100% 85px, 100% calc( 100% - 85px - 60px ), 100% 60px;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav .kari_header_nav_item {
		font-size: 24px;
		line-height: 50px;
	}
*/

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav {
		padding: 10.9375vw 7.8125vw 5.8125vw 7.8125vw;
		width: 59.375vw;
		top: 7.8125vw;
		right: -3vw;
		background-position: center top, center 13.28125vw, center bottom;
		background-size: 100% 13.28125vw, 100% calc( 100% - 13.28125vw - 9.375vw ), 100% 9.375vw;

		background-size: 100% 13.48125vw, 100% calc(100% - 13.28125vw - 9.375vw), 100% 9.375vw;
	}

	#kari_header #kari_header_menu #kari_header_nav_cover #kari_header_nav .kari_header_nav_item {
		font-size: 3.75vw;
		line-height: 7.8125vw;
	}

}




/* ------------------------------------------------------------------------------------------------ MAIN */




#kari_main {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;

	/* Add */
	overflow: hidden;
}

#kari_main #kari_main_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 162% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-image: url("../images/top_fv_bg01.png");
	background-color: transparent;
	background-size: 76.875% auto;
}

#kari_main #kari_main_bg02 {
	margin: 0px 0px 0px 0px;
	padding: 19% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 118px;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_fv_bg02.png");
	background-color: transparent;
	background-size: 100% auto;
}




/* ------------------------------------------------------------------------------------------------ FV */




#kari_top_fv {
	margin: 0px 0px 0px 0px;
	padding: 170px 0px 0px 0px;
	display: block;
	position: relative;

	z-index: 5000;
}

#kari_top_fv #kari_top_fv_kv {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	flex-direction: row;
	align-items: center;
	width: 1400px;
}

#kari_top_fv #kari_top_fv_kv #kv_main {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 736px;
}

#kari_top_fv #kari_top_fv_kv #kv_main img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
}

#kari_top_fv #kari_top_fv_kv #kv_body {
	margin: 0px 0px 0px 78px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	flex: 1;
}

#kari_top_fv #kari_top_fv_kv #kv_body img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: auto;
}

#kari_top_fv #kari_top_fv_kv #kv_body img:nth-child(1) {
	width: 100%;
}

#kari_top_fv #kari_top_fv_kv #kv_body img:nth-child(2) {
	margin-top: 36px;
	width: 100%;
}




@media only screen and ( max-width: 1450px ){

	#kari_top_fv {
		padding-top: 130px;
	}

	#kari_top_fv #kari_top_fv_kv {
		margin: 0px 25px 0px 25px;
		width: auto;
	}

	#kari_top_fv #kari_top_fv_kv #kv_main {
		width: 52.5714%;
	}

	#kari_top_fv #kari_top_fv_kv #kv_body {
		margin-left: 5.3793vw;
		margin-left: 25px;
	}

}




/*
@media only screen and ( max-width: 960px ){

	#kari_top_fv {
		padding-top: calc( 36px + 9.1666vw );
	}

}
*/



@media only screen and ( max-width: 750px ){

	#kari_top_fv {
		padding-top: calc( 36px + 1.3333vw + 9.0666vw + 1.3333vw );
	}

}




@media only screen and ( max-width: 750px ){

/*
	#kari_top_fv {
		padding-top: calc( 36px + 9.1666vw );
	}
*/

	#kari_top_fv #kari_top_fv_kv {
		margin: 0px 25px 43vw 25px;
		width: auto;
		display: block;
		position: relative;
	}

	#kari_top_fv #kari_top_fv_kv #kv_main {
		width: 100%;
	}

	#kari_top_fv #kari_top_fv_kv #kv_main img {
		border-radius: 10px;
	}

	#kari_top_fv #kari_top_fv_kv #kv_body {
		margin: 0px 0px 0px 0px;
		position: absolute;
		top: 70%;
		left: 0px;
		width: 100%;
	}

	#kari_top_fv #kari_top_fv_kv #kv_body img:nth-child(1) {
		margin-left: auto;
		margin-right: auto;
		width: 80%;
	}

	#kari_top_fv #kari_top_fv_kv #kv_body img:nth-child(2) {
		margin-left: auto;
		margin-right: auto;
		margin-top: 20px;
		width: 80%;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_fv {
		padding-top: calc( 7.5vw + 9.1666vw );
		padding-top: calc( 7.5vw + 1.3333vw + 9.0666vw + 1.3333vw );
	}

	#kari_top_fv #kari_top_fv_kv {
		margin: 0px 5.2083vw 43vw 5.2083vw;
	}

	#kari_top_fv #kari_top_fv_kv #kv_main img {
		border-radius: 2.0833vw;
	}

}




/* ------------------------------------------------------------------------------------------------ INTRO */




#kari_top_intro {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;

	z-index: 4000;
}

#kari_top_intro #kari_top_intro_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 93.75% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/top_intro_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
}

#kari_top_intro #kari_top_intro_in {
	margin: 0px auto 0px auto;
	padding: 380px 0px 350px 0px;
	display: block;
	position: relative;
	width: 1000px;

	padding-bottom: 240px;
}

#kari_top_intro #kari_top_intro_in h2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 56px 0px;
	display: block;
	position: relative;
	width: auto;
	height: 112px;
}

#kari_top_intro #kari_top_intro_in h2 img {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 100%;
}

#kari_top_intro #kari_top_intro_in p {
	margin: 18px 0px 18px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: center;
	font-size: 26px;
	line-height: 52px;
	letter-spacing: 0.04em;
	color: #6e0f14;
	text-decoration: none;
	text-shadow: 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0);
}

#kari_top_intro #kari_top_intro_in .hl04,
#kari_top_intro #kari_top_intro_in .hl03,
#kari_top_intro #kari_top_intro_in .hl02,
#kari_top_intro #kari_top_intro_in .hl01 {
	position: relative;
	display: inline-block;
	/*text-stroke: 5px #ffffff;*/
	-webkit-text-stroke: 6px #ffffff;
	font-size: 140%;
	text-shadow: 0px 0px 0px rgba(255, 255, 255, 0.0);
}

#kari_top_intro #kari_top_intro_in .hl04::before,
#kari_top_intro #kari_top_intro_in .hl03::before,
#kari_top_intro #kari_top_intro_in .hl02::before,
#kari_top_intro #kari_top_intro_in .hl01::before {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 3px;
	bottom: 0px;
	content: attr(data-text);
	color: #f2b455;
	-webkit-text-stroke: 6px #f2b455;
}

#kari_top_intro #kari_top_intro_in .hl04 .hl_in,
#kari_top_intro #kari_top_intro_in .hl03 .hl_in,
#kari_top_intro #kari_top_intro_in .hl02 .hl_in,
#kari_top_intro #kari_top_intro_in .hl01 .hl_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	position: relative;
	display: inline-block;
}

#kari_top_intro #kari_top_intro_in .hl04::after,
#kari_top_intro #kari_top_intro_in .hl03::after,
#kari_top_intro #kari_top_intro_in .hl02::after,
#kari_top_intro #kari_top_intro_in .hl01::after {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0px;
	bottom: 0px;
	content: attr(data-text);
	color: #0062b1;
	-webkit-text-stroke: 0px #ffffff;
}

#kari_top_intro #kari_top_intro_in .hl02::after {
	color: #009c5a;
}

#kari_top_intro #kari_top_intro_in .hl03::after {
	color: #cc8522;
}

#kari_top_intro #kari_top_intro_in .hl04::after {
	color: #e80016;
}




@media only screen and ( max-width: 1450px ){

	#kari_top_intro #kari_top_intro_in {
		padding: 120px 0px 120px 0px;

		padding-top: 26vw;
	}

}




@media only screen and ( max-width: 1000px ){

	#kari_top_intro #kari_top_intro_bg01 {
		padding: 170% 0px 0px 0px;
		background-size: 180% auto;
	}

	#kari_top_intro #kari_top_intro_in {
		margin: 0px auto 0px auto;
		padding: 120px 0px 120px 0px;
		display: block;
		position: relative;
		width: auto;
	}

	#kari_top_intro #kari_top_intro_in h2 {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 56px 0px;
		height: 81px;
	}

	#kari_top_intro #kari_top_intro_in p {
		margin: 18px 0px 18px 0px;
		padding: 0px 0px 0px 0px;
		display: block;
		text-align: center;
		font-size: 20px;
		line-height: 40px;
		text-decoration: none;
		text-shadow: 0px 0px 20px rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 20px rgba(255, 255, 255, 1.0);
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_intro #kari_top_intro_bg01 {
		padding: 170% 0px 0px 0px;
		background-size: 180% auto;
	}

	#kari_top_intro #kari_top_intro_in h2 {
		height: 10.8vw;
	}

}




@media only screen and ( max-width: 640px ){

	#kari_top_intro #kari_top_intro_in {
		padding: 120px 0px 120px 0px;
		padding: 18.75vw 0px 18.75vw 0px;
	}

	#kari_top_intro #kari_top_intro_in h2 {
		padding: 0px 0px 56px 0px;

		padding: 0px 0px 8.75vw 0px;
	}

	#kari_top_intro #kari_top_intro_in p {
		margin: 18px 0px 18px 0px;
		font-size: 20px;
		line-height: 40px;
		text-shadow: 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0);

		margin: 2.8125vw 0px 2.8125vw 0px;
		font-size: 3.125vw;
		line-height: 6.6225vw;
		text-shadow: 0px 0px 3.125vw rgba(255, 255, 255, 1.0), 0px 0px 30px rgba(255, 255, 255, 1.0), 0px 0px 3.125vw rgba(255, 255, 255, 1.0);
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_intro #kari_top_intro_in .hl04,
	#kari_top_intro #kari_top_intro_in .hl03,
	#kari_top_intro #kari_top_intro_in .hl02,
	#kari_top_intro #kari_top_intro_in .hl01 {
		-webkit-text-stroke: 1.25vw #ffffff;
	}

	#kari_top_intro #kari_top_intro_in .hl04::before,
	#kari_top_intro #kari_top_intro_in .hl03::before,
	#kari_top_intro #kari_top_intro_in .hl02::before,
	#kari_top_intro #kari_top_intro_in .hl01::before {
		top: 0.625vw;
		-webkit-text-stroke: 1.25vw #f2b455;
	}

}




/* ------------------------------------------------------------------------------------------------ Movie */




#kari_top_movie {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 5000;
}

#kari_top_movie #kari_top_movie_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 19% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: -1%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/top_movie_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
}

#kari_top_movie #kari_top_movie_link {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
}

#kari_top_movie #kari_top_movie_link::before {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	background-color: #f09600;
	opacity: 0.8;
	content: '';
	transition: opacity 0.3s ease 0s;
}

#kari_top_movie #kari_top_movie_link:hover::before {
	opacity: 0.4;
}

#kari_top_movie #kari_top_movie_link img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
}

#kari_top_movie #kari_top_movie_link .kari_top_movie_link_icon {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -82px;
	margin-left: -82px;
	width: 164px;
	height: 164px;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center center;
	background-image: url("../images/top_movie_icon_play.svg");
	background-color: transparent;
	background-size: 100% 100%;
	transition: transform 0.3s ease 0s;

	margin-top: calc( -82px - 7vw );
}

#kari_top_movie #kari_top_movie_link:hover .kari_top_movie_link_icon {
	transform: scale(1.3);
}




@media only screen and ( max-width: 750px ){

	#kari_top_movie #kari_top_movie_link .kari_top_movie_link_icon {
		margin-top: -10.9333vw;
		margin-left: -10.9333vw;
		width: 21.8666vw;
		height: 21.8666vw;

		margin-top: calc( -10.9333vw - 7vw );
	}

}




/* ------------------------------------------------------------------------------------------------ Main In 1 */




#kari_main_in1 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 6000;
	background-repeat: repeat-y;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/main_in1_bg01.png");
	background-color: transparent;
	background-size: 100% auto;

	/*overflow: hidden;*/
}

#kari_main_in1 #kari_main_in1_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 19% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: 99.9%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/top_movie_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
}

#kari_main_in1 #kari_main_in1_bg02 {
	margin: 0px 0px 0px 0px;
	padding: 19% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_news_bg01.png");
	background-color: transparent;
	background-size: 85.364% auto;
	pointer-events: none;
}




/* ------------------------------------------------------------------------------------------------ Main In 2 */




#kari_main_in2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 240px 0px;
	display: block;
	background-color: transparent;
	/*overflow: hidden;*/

	background-repeat: no-repeat;
	background-position: right bottom;
	background-image: url("../images/top_fv_bg03.png");
	background-color: transparent;
	background-size: 48.3333% auto;
}




@media only screen and ( max-width: 750px ){

	#kari_main_in2 {
		margin: 0px 0px 80px 0px;
		padding: 0px 0px 240px 0px;

		margin: 0px 0px 0vw 0px;
		padding: 0px 0px 32vw 0px;
	}

}




/* ------------------------------------------------------------------------------------------------ News */




#kari_top_news {
	margin: 0px 0px 0px 0px;
	padding: 260px 0px 260px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 7000;
}

#kari_top_news #kari_top_news_in {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 1000px;
}

#kari_top_news #kari_top_news_in h2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;
	width: auto;
	height: 128px;
}

body.single #kari_top_news #kari_top_news_in h2 {
	margin-bottom: 60px;
}

#kari_top_news #kari_top_news_in h2 img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 100%;
}

body.single #kari_top_news #kari_top_news_in h2 img {
	margin-left: auto;
	margin-right: auto;
}




@media only screen and ( max-width: 1450px ){

	#kari_top_news {
		padding: 260px 0px 260px 0px;
		padding: 18vw 0px 18vw 0px;
	}

	body.single #kari_top_news {
		padding: 260px 0px 18vw 0px;
	}

}




@media only screen and ( max-width: 1000px ){

	#kari_top_news #kari_top_news_in {
		margin: 0px 25px 0px 25px;
		width: auto;
	}

	#kari_top_news #kari_top_news_in h2 {
		height: 92px;
	}

}




@media only screen and ( max-width: 750px ){

	body.single #kari_top_news {
		padding-top: 34.6666vw;
	}

	#kari_top_news #kari_top_news_in h2 {
		height: 12.2666vw;
	}

	body.single #kari_top_news #kari_top_news_in h2 {
		margin-bottom: 60px;
		margin-bottom: 8vw;
	}

}




#kari_top_news #kari_top_news_in .news_list {
	margin: 20px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item {
	margin: 10px 0px 10px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	list-style-type: none;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link {
	margin: 0px 0px 0px 0px;
	padding: 22px 35px 22px 35px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	flex-direction: row;
	align-items: center;
	background-color: #ffffff;
	border-radius: 16px;
	box-shadow: 0 2px 0 0 rgba(202,172,122,1.0);
}

#kari_top_news #kari_top_news_in .news_list .news_list_item a.news_list_item_link {
	transition: background-color 0.3s ease 0s;
	text-decoration: none;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item a.news_list_item_link:hover {
	background-color: #dfcaa7;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_date {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: left;
	font-size: 22px;
	line-height: 1.0;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	width: 165px;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_date small {
	margin: 0px 1em 0px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 64%;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_title {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: left;
	font-size: 18px;
	line-height: 28px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	flex: 1;
}




@media only screen and ( max-width: 750px ){

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link {
		padding: 18px 30px 18px 30px;
		border-radius: 16px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_date {
		font-size: 18px;
		width: 130px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_title {
		font-size: 16px;
		line-height: 24px;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link {
		padding: 3.75vw 6.25vw 3.75vw 6.25vw;
		border-radius: 3.3333vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_date {
		font-size: 3.75vw;
		width: 27.0833vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_list_item_link .news_list_item_title {
		font-size: 3.3333vw;
		line-height: 5vw;
	}

}




/* ------------------------------------------------------------------------------------------------ News Single */




#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	background-color: #ffffff;
	border-radius: 16px;
	box-shadow: 0 2px 0 0 rgba(202,172,122,1.0);
	overflow: hidden;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head {
	margin: 0px 0px 0px 0px;
	padding: 20px 32px 20px 32px;
	display: block;
	background-color: #dfcaa7;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_date {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: center;
	font-size: 22px;
	line-height: 1.0;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_date small {
	margin: 0px 1em 0px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 64%;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_text {
	margin: 0.25em 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: center;
	font-size: 26px;
	line-height: 40px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body {
	margin: 0px 0px 0px 0px;
	padding: 12px 50px 12px 50px;
	display: block;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body .news_single_body_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body p {
	margin: 28px 0px 28px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: left;
	font-size: 18px;
	line-height: 31px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body p.center {
	text-align: center;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body img {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body img.wide_img {
	margin-left: auto;
	margin-right: auto;
	max-width: none;
	width: 64%;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body .youtube_iframe {
	padding: 56% 0px 0px 0px;
	height: 0px;
	width: 100%;
	position: relative;
}

#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body .youtube_iframe iframe {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
}




@media only screen and ( max-width: 750px ){

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body img.wide_img {
		width: 100%;
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in {
		border-radius: 16px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head {
		padding: 20px 32px 20px 32px;

		padding: 16px 26px 16px 26px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_date {
		font-size: 22px;

		font-size: 18px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_text {
		margin: 0.25em 0px 0px 0px;
		font-size: 24px;
		line-height: 36px;

		font-size: 19px;
		line-height: 29px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body {
		padding: 12px 50px 12px 50px;

		padding: 10px 40px 10px 40px;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body p {
		margin: 28px 0px 28px 0px;
		font-size: 18px;
		line-height: 31px;

		margin: 22px 0px 22px 0px;
		font-size: 16px;
		line-height: 26px;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in {
		border-radius: 3.3333vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head {
		padding: 3.3333vw 5.4166vw 3.3333vw 5.4166vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_date {
		font-size: 3.75vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_head .news_single_head_text {
		font-size: 3.9583vw;
		line-height: 6.0416vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body {
		padding: 2.0833vw 8.3333vw 2.0833vw 8.3333vw;
	}

	#kari_top_news #kari_top_news_in .news_list .news_list_item .news_single_in .news_single_body p {
		margin: 4.5833vw 0px 4.5833vw 0px;
		font-size: 3.3333vw;
		line-height: 5.4166vw;
	}

}




#kari_top_news #kari_top_news_in .single_button_cover {
	margin: 40px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
}

#kari_top_news #kari_top_news_in .single_button {
	margin: 0px auto 0px auto;
	padding: 14px 20px 14px 20px;
	display: block;
	width: 236px;
	box-sizing: border-box;
	background-color: #f4513b;
	border-style: solid;
	border-color: #ffffff;
	border-width: 6px;
	border-radius: 100px;
	cursor: pointer;
	transition: color 0.3s ease 0s;
	box-shadow: 0 3px 0 0 #f1b34b;
	text-decoration: none;
}

#kari_top_news #kari_top_news_in .single_button .single_button_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	flex-direction: row;
	align-items: center;
}

#kari_top_news #kari_top_news_in .single_button .single_button_in .single_button_text {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: center;
	font-size: 27px;
	line-height: 27px;
	letter-spacing: 0.1em;
	color: #ffffff;
	text-decoration: none;
	flex: 1;
	transition: color 0.3s ease 0s;
}

#kari_top_news #kari_top_news_in .single_button:hover .single_button_in .single_button_text {
	color: #6e0f14;
}

#kari_top_news #kari_top_news_in .single_button .single_button_in .single_button_icon {
	margin: 0px 12px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 18px;
	height: 17px;
	color: rgb( 247, 239, 230 );
	transition: color 0.3s ease 0s, transform 0.3s ease 0s;
	transform: translateX(0px);
}

#kari_top_news #kari_top_news_in .single_button:hover .single_button_in .single_button_icon {
	color: #6e0f14;
	transform: translateX(-5px);
}

#kari_top_news #kari_top_news_in .single_button .single_button_in .single_button_icon svg {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height; 100%;
}




@media only screen and ( max-width: 750px ){

	#kari_top_news #kari_top_news_in .single_button_cover {
		margin: 40px 0px 0px 0px;

		margin: 5.3333vw 0px 0px 0px;
	}

	#kari_top_news #kari_top_news_in .single_button {
		padding: 14px 20px 14px 20px;
		width: 236px;
		border-width: 6px;
		box-shadow: 0 3px 0 0 #f1b34b;

		padding: 1.8666vw 2.6666vw 1.8666vw 2.6666vw;
		width: 31.4666vw;
		border-width: 0.8vw;
		box-shadow: 0 0.4vw 0 0 #f1b34b;
	}

	#kari_top_news #kari_top_news_in .single_button .single_button_in .single_button_text {
		font-size: 27px;
		line-height: 27px;

		font-size: 3.6vw;
		line-height: 3.6vw;
	}

	#kari_top_news #kari_top_news_in .single_button .single_button_in .single_button_icon {
		margin: 0px 12px 0px 0px;
		width: 18px;
		height: 17px;

		margin: 0px 1.6vw 0px 0px;
		width: 2.4vw;
		height: 2.2666vw;
	}

	#kari_top_news #kari_top_news_in .single_button:hover .single_button_in .single_button_icon {
		transform: translateX(-5px);

		transform: translateX(-0.6666vw);
	}

}




/* ------------------------------------------------------------------------------------------------ Staff */




#kari_top_staff {
	margin: 0px 0px 0px 0px;
	padding: 60px 0px 60px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 6000;
	background-color: #f1eadd;
}

#kari_top_staff #kari_top_staff_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 36% 0px 0px 0px;
	display: block;
	position: absolute;
	top: -16%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_staff_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
}

#kari_top_staff #kari_top_staff_bg02 {
	margin: 0px 0px 0px 0px;
	padding: 36% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: -16%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_staff_bg02.png");
	background-color: transparent;
	background-size: 100% auto;
}

#kari_top_staff #kari_top_staff_bg03 {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: left top;
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
	top: -20%;
	left: 0%;
	width: 720px;
	height: 1106px;
	background-image: url("../images/top_float_rl_item01.png");
}

#kari_top_staff #kari_top_staff_bg04 {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: left top;
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
	bottom: 50%;
	right: 0%;
	width: 870px;
	height: 1128px;
	background-image: url("../images/top_float_rl_item02.png");
}

@keyframes staffbgitemanim01 {
	0% {
		transform: rotate(-10deg) translateY(-25vh);
	}
	100% {
		transform: rotate(10deg) translateY(25vh);
	}
}

@keyframes staffbgitemanim01b {
	0% {
		transform: rotate(10deg) translateY(25vh);
	}
	100% {
		transform: rotate(-10deg) translateY(-25vh);
	}
}

@keyframes staffbgitemanim02 {
	0% {
		transform: rotate(-5deg) translateY(-15vh);
	}
	100% {
		transform: rotate(5deg) translateY(15vh);
	}
}

@keyframes staffbgitemanim02b {
	0% {
		transform: rotate(5deg) translateY(15vh);
	}
	100% {
		transform: rotate(-5deg) translateY(-15vh);
	}
}

#kari_top_staff #kari_top_staff_bg03_08,
#kari_top_staff #kari_top_staff_bg03_07,
#kari_top_staff #kari_top_staff_bg03_06,
#kari_top_staff #kari_top_staff_bg03_05,
#kari_top_staff #kari_top_staff_bg03_04,
#kari_top_staff #kari_top_staff_bg03_03,
#kari_top_staff #kari_top_staff_bg03_02,
#kari_top_staff #kari_top_staff_bg03_01 {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
}

#kari_top_staff #kari_top_staff_bg03_01 {
	top: -100%;
	right: 10%;
	width: 470px;
	height: 451px;
	background-image: url("../images/top_float_item01.png");
	animation: 35s ease 0.0s infinite alternate staffbgitemanim01;
}

#kari_top_staff #kari_top_staff_bg03_02 {
	top: -80%;
	right: 5%;
	width: 188px;
	height: 262px;
	background-image: url("../images/top_float_item02.png");
	animation: 25s ease 0.0s infinite alternate staffbgitemanim02;
}

#kari_top_staff #kari_top_staff_bg03_03 {
	top: -20%;
	left: 5%;
	width: 234px;
	height: 158px;
	background-image: url("../images/top_float_item03.png");
	animation: 30s ease 0.0s infinite alternate staffbgitemanim01b;
}

#kari_top_staff #kari_top_staff_bg03_04 {
	top: -60%;
	left: 5%;
	width: 316px;
	height: 553px;
	background-image: url("../images/top_float_item04.png");
	animation: 20s ease 0.0s infinite alternate staffbgitemanim02b;
}

#kari_top_staff #kari_top_staff_bg03_05 {
	bottom: 50%;
	right: -15%;
	width: 525px;
	height: 904px;
	background-image: url("../images/top_float_item05.png");
	animation: 40s ease 0.0s infinite alternate staffbgitemanim01;
}

#kari_top_staff #kari_top_staff_bg03_06 {
	bottom: 40%;
	right: 2%;
	width: 323px;
	height: 610px;
	background-image: url("../images/top_float_item06.png");
	animation: 28s ease 0.0s infinite alternate staffbgitemanim02;
}

#kari_top_staff #kari_top_staff_bg03_07 {
	top: 50%;
	left: 10%;
	width: 153px;
	height: 708px;
	background-image: url("../images/top_float_item07.png");
	animation: 25s ease 0.0s infinite alternate staffbgitemanim01b;
}

#kari_top_staff #kari_top_staff_bg03_08 {
	top: 20%;
	left: -20%;
	width: 763px;
	height: 1101px;
	background-image: url("../images/top_float_item08.png");
	animation: 30s ease 0.0s infinite alternate staffbgitemanim02b;
}

#kari_top_staff #kari_top_staff_in {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 1000px;
	position: relative;
}

#kari_top_staff #kari_top_staff_in h2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 123px;
	position: relative;
}

#kari_top_staff #kari_top_staff_in h2 img {
	margin: 0px 0px 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 100%;
}




@media only screen and ( max-width: 1700px ){

	#kari_top_staff #kari_top_staff_bg03,
	#kari_top_staff #kari_top_staff_bg04,
	#kari_top_staff #kari_top_staff_bg03_08,
	#kari_top_staff #kari_top_staff_bg03_07,
	#kari_top_staff #kari_top_staff_bg03_06,
	#kari_top_staff #kari_top_staff_bg03_05,
	#kari_top_staff #kari_top_staff_bg03_04,
	#kari_top_staff #kari_top_staff_bg03_03,
	#kari_top_staff #kari_top_staff_bg03_02,
	#kari_top_staff #kari_top_staff_bg03_01 {
		opacity: 1.0;
	}

	#kari_top_staff #kari_top_staff_bg03 {
		top: -20%;
		left: 0%;
		width: 720px;
		height: 1106px;

		top: -20%;
		left: 0%;
		width: 42.3529vw;
		height: 65.0588vw;
	}

	#kari_top_staff #kari_top_staff_bg04 {
		bottom: 50%;
		right: 0%;
		width: 870px;
		height: 1128px;

		bottom: 50%;
		right: 0%;
		width: 51.1764vw;
		height: 66.3529vw;
	}

	#kari_top_staff #kari_top_staff_bg03_01 {
		top: -100%;
		right: 10%;
		width: 470px;
		height: 451px;

		top: -50%;
		right: 10%;
		width: 27.647vw;
		height: 26.5294vw;
	}

	#kari_top_staff #kari_top_staff_bg03_02 {
		top: -80%;
		right: 5%;
		width: 188px;
		height: 262px;

		top: -60%;
		right: 5%;
		width: 11.0588vw;
		height: 15.4117vw;
	}

	#kari_top_staff #kari_top_staff_bg03_03 {
		top: -20%;
		left: 5%;
		width: 234px;
		height: 158px;

		top: -20%;
		left: 5%;
		width: 13.7647vw;
		height: 9.2941vw;
	}

	#kari_top_staff #kari_top_staff_bg03_04 {
		top: -60%;
		left: 5%;
		width: 316px;
		height: 553px;

		top: -60%;
		left: 5%;
		width: 18.5882vw;
		height: 32.5294vw;
	}

	#kari_top_staff #kari_top_staff_bg03_05 {
		bottom: 50%;
		right: -15%;
		width: 525px;
		height: 904px;

		bottom: 50%;
		right: -15%;
		width: 30.8823vw;
		height: 53.1764vw;
	}

	#kari_top_staff #kari_top_staff_bg03_06 {
		bottom: 40%;
		right: 2%;
		width: 323px;
		height: 610px;

		bottom: 40%;
		right: 2%;
		width: 19vw;
		height: 35.8823vw;
	}

	#kari_top_staff #kari_top_staff_bg03_07 {
		top: 50%;
		left: 10%;
		width: 153px;
		height: 708px;

		top: 50%;
		left: 10%;
		width: 9vw;
		height: 41.647vw;
	}

	#kari_top_staff #kari_top_staff_bg03_08 {
		top: 20%;
		left: -20%;
		width: 44.8823vw;
		height: 64.7647vw;
	}

}




@media only screen and ( max-width: 1000px ){

	#kari_top_staff #kari_top_staff_in {
		margin: 0px 25px 0px 25px;
		width: auto;
	}

	#kari_top_staff #kari_top_staff_in h2 {
		height: 123px; /* 72% */
		height: 88px;
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_staff {
		padding: 8vw 0px 8vw 0px;
	}

	#kari_top_staff #kari_top_staff_bg01 {
		top: -8%;
	}

	#kari_top_staff #kari_top_staff_bg02 {
		bottom: -8%;
	}

	#kari_top_staff #kari_top_staff_bg03 {
		top: -20%;
		left: 0%;
		width: 70vw;
		height: 112vw;
	}

	#kari_top_staff #kari_top_staff_bg04 {
		bottom: 10%;
		right: 0%;
		width: 80vw;
		height: 110vw;
	}

	#kari_top_staff #kari_top_staff_bg03_05 {
		bottom: 10%;
		right: 58%;
		width: 30.8823vw;
		height: 53.1764vw;
	}

	#kari_top_staff #kari_top_staff_bg03_06 {
		bottom: 40%;
		right: 62%;
		width: 19vw;
		height: 35.8823vw;
	}

	#kari_top_staff #kari_top_staff_bg03_08 {
		top: 20%;
		left: -20%;
		width: 52vw;
		height: 64.7647vw;
	}

	#kari_top_staff #kari_top_staff_in h2 {
		height: 11.7333vw;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_staff #kari_top_staff_in {
		margin: 0px 5.2083vw 0px 5.2083vw;
	}

}




#kari_top_staff #kari_top_staff_in h3 {
	margin: 1.5em 0px 0.5em 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: right;
	font-size: 36px;
	line-height: 36px;
	letter-spacing: 0.0em;
	color: #f09600;
	text-decoration: none;
	font-weight: 400;
}

#kari_top_staff #kari_top_staff_in hr {
	margin: 30px 0px 30px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: 1px;
	background-color: #f09600;
	border-width: 0px;
}

#kari_top_staff #kari_top_staff_in .staff_list {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	flex-direction: row;
	align-items: center;
}

#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item {
	margin: 10px 0px 10px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	list-style-type: none;
	text-align: right;
	font-size: 22px;
	line-height: 36px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	text-shadow: 0px 0px 0.3em #ffffff, 0px 0px 0.3em #ffffff;
	width: 8em;
}

#kari_top_staff #kari_top_staff_in .staff_list .long {
	width: 13em;
	width: 15em;
}

#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item small {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	font-size: 16px;
	line-height: 27px;
	color: #f09600;
	text-shadow: 0px 0px 0.3em #ffffff, 0px 0px 0.3em #ffffff, 0px 0px 0.3em #ffffff, 0px 0px 0.3em #ffffff;
}

#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item strong {
	font-weight: 500;
	font-size: 80%;
}

#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item img.balloon {
	margin: 0px 0px 0px 0.2em;
	padding: 0px 0px 0px 0px;
	display: inline-block;
	vertical-align: middle;
	width: 0.9em;
	height: 0.9em;
}




@media only screen and ( max-width: 750px ){

	#kari_top_staff #kari_top_staff_in h3 {
		font-size: 32px;
		line-height: 32px;
	}

	#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item {
		margin: 10px 0px 10px 0px;
		font-size: 20px;
		line-height: 32px;
		width: 8em;
		width: 45%;
	}

	#kari_top_staff #kari_top_staff_in .staff_list .long {
		width: 13em;
		width: 80%;
	}

	#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item small {
		font-size: 14px;
		line-height: 23px;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_staff #kari_top_staff_in h3 {
		font-size: 32px;
		line-height: 32px;

		font-size: 6.6666vw;
		line-height: 6.6666vw;
	}

	#kari_top_staff #kari_top_staff_in hr {
		margin: 30px 0px 30px 0px;
		margin: 6.25vw 0px 6.25vw 0px;
	}

	#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item {
		margin: 10px 0px 10px 0px;
		font-size: 20px;
		line-height: 32px;

		margin: 2.0833vw 0px 2.0833vw 0px;
		font-size: 4.1666vw;
		line-height: 6.6666vw;

		/*width: 8em;*/
	}

	#kari_top_staff #kari_top_staff_in .staff_list .long {
		/*width: 13em;*/
	}

	#kari_top_staff #kari_top_staff_in .staff_list .staff_list_item small {
		font-size: 14px;
		line-height: 23px;

		font-size: 2.9166vw;
		line-height: 4.7916vw;
	}

}




/* ------------------------------------------------------------------------------------------------ Char */




#kari_top_char {
	margin: 0px 0px 0px 0px;
	padding: 260px 0px 460px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 8000;
}

#kari_top_char #kari_top_char_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 75% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: 0%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/top_character_bg02.png");
	background-color: transparent;
	background-size: 100% auto;

	bottom: -2px;
}

#kari_top_char #kari_top_char_in {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 1000px;
	position: relative;
}

#kari_top_char #kari_top_char_in h2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 128px;
	position: relative;
}

#kari_top_char #kari_top_char_in h2 img {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 100%;
}




@media only screen and ( max-width: 1000px ){

	#kari_top_char {
		padding: 26vw 0px 46vw 0px;
	}

	#kari_top_char #kari_top_char_in {
		margin: 0px 25px 0px 25px;
		width: auto;
	}

	#kari_top_char #kari_top_char_in h2 {
		height: 128px;
		height: 92px;
	}

}




@media only screen and ( max-width: 870px ){

}




@media only screen and ( max-width: 750px ){

	#kari_top_char #kari_top_char_in h2 {
		height: 128px;
		height: 12.2666vw;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_char #kari_top_char_in {
		margin: 0px 5.2083vw 0px 5.2083vw;
	}

}




#kari_top_char .char_list {
	margin: 20px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	width: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

#kari_top_char .char_list .char_list_item {
	margin: 15px 15px 15px 15px;
	padding: 0px 0px 0px 0px;
	width: 146px;
	height: 146px;
	display: block;
	list-style-type: none;
	box-sizing: border-box;
	border-radius: 150px;
	overflow: hidden;
	background-color: #d3c4b3;
	border-style: solid;
	border-color: #6e0f14;
	border-width: 1px 1px 1px 1px;
	transition: background-color 0.3s ease 0s;
	cursor: pointer;
}

#kari_top_char .char_list .current,
#kari_top_char .char_list .char_list_item:hover {
	background-color: #f4513b;
}

#kari_top_char .char_list .char_list_item img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 100%;
	height: auto;
	display: block;
}




@media only screen and ( max-width: 1000px ){

	#kari_top_char .char_list .char_list_item {
		width: 106px;
		height: 106px;
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_char .char_list .char_list_item {
		margin: 2vw 2vw 2vw 2vw;
		width: 14.1333vw;
		height: 14.1333vw;

		width: 13vw;
		height: 13vw;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_char .char_list {
		margin: 4.1666vw 0px 4.1666vw 0px;
	}

	#kari_top_char .char_list .char_list_item {
	}

}




#kari_top_char #char_list_body {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;
}

#kari_top_char #char_list_body #char_list_body_left {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 50%;
	left: -200px;
	width: 62px;
	height: 94px;
	margin-top: -47px;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_character_ui_arrow_left.png");
	background-color: transparent;
	background-size: 100% auto;
	cursor: pointer;
	transition: transform 0.3s ease;
	animation: 1s ease 0.0s infinite alternate charlistarrowanim_left;
}

#kari_top_char #char_list_body #char_list_body_right {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 50%;
	right: -200px;
	width: 62px;
	height: 94px;
	margin-top: -47px;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/top_character_ui_arrow_right.png");
	background-color: transparent;
	background-size: 100% auto;
	cursor: pointer;
	transition: transform 0.3s ease;
	animation: 1s ease 0.0s infinite alternate charlistarrowanim_right;
}

#kari_top_char #char_list_body #char_list_body_right:hover,
#kari_top_char #char_list_body #char_list_body_left:hover {
	transform: scale(1.15);
}

@keyframes charlistarrowanim_left {
	0% {
		transform: translateX(0px);
	}
	100% {
		transform: translateX(10px);
	}
}

@keyframes charlistarrowanim_right {
	0% {
		transform: translateX(0px);
	}
	100% {
		transform: translateX(-10px);
	}
}

#kari_top_char #char_list_body #char_list_body_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 100%;
	background-repeat: no-repeat;
	background-position: left bottom;
	background-image: url("../images/top_character_bg01.png");
	background-color: transparent;
	background-size: auto 100%;
}

#kari_top_char #char_list_body .char_list_body_item {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 100%;
	display: block;

	position: absolute;
	top: 0px;
	left: 0px;
	opacity: 0.0;
	/*transition: opacity 0.3s ease 0s;*/
	display: none;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	flex-direction: row;
	align-items: flex-start;
}

#kari_top_char #char_list_body .char_list_body_item:nth-child(1) {
	opacity: 1.0;
	display: block;
	position: relative;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_left {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: 40%;
	display: block;
	position: relative;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_left img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 120%;
	height: auto;
	position: absolute;
	position: relative;
	top: 0px;
	left: -6%;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_right {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: auto;
	display: block;
	flex: 1;
	position: relative;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof_in,
#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof_cover {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	width: auto;
	display: block;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof {
	margin: 0px 0px 0px 0px;
	padding: 100px 60px 60px 100px;
	display: block;
	width: auto;

	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: center top, center 75%, center bottom;
	background-image: url("../images/top_character_ui_window_main_top.png"), url("../images/top_character_ui_window_main_middle.png"), url("../images/top_character_ui_window_main_bottom.png");
	background-color: transparent;
	background-size: 100% auto, 100% calc( 50% ), 100% auto;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_name {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 12px;
	display: block;
	width: auto;
	list-style-type: none;
	text-align: left;
	font-size: 38px;
	line-height: 50px;
	letter-spacing: 0.0em;
	color: #2e4f66;
	text-decoration: none;
	font-weight: 800;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_kana {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 12px;
	display: block;
	width: auto;
	list-style-type: none;
	text-align: left;
	font-size: 27px;
	line-height: 28px;
	letter-spacing: 0.0em;
	color: #2e4f66;
	text-decoration: none;

	font-family: 'Bitcount Grid Double', system-ui;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-variation-settings:
		'slnt' 0,
		'CRSV' 0,
		'ELSH' 0,
		'ELXP' 0;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv {
	margin: 20px 0px 20px 0px;
	padding: 0px 0px 0px 12px;
	display: block;
	width: auto;
	list-style-type: none;
	text-align: left;
	font-size: 24px;
	line-height: 50px;
	letter-spacing: 0.0em;
	color: #2e4f66;
	text-decoration: none;
	font-weight: 800;
	border-style: solid;
	border-color: #2e4f66;
	border-width: 1px 0px 1px 0px;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv small {
	font-size: 21px;
	margin-right: 0.5em;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof p {
	margin: 20px 0px 20px 0px;
	padding: 0px 18px 0px 18px;
	display: block;
	width: auto;
	list-style-type: none;
	text-align: left;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.0em;
	color: #2e4f66;
	text-decoration: none;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_face {
	margin: 20px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 85%;
}

#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_face img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
}

#kari_top_char #char_list_body .char_list_body_item .cc_modal_button {
	margin: 0px 0px 0px 0px;
	padding: 0% 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0px;
	right: 36px;
	width: 205px;
	height: 104px;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center center;
	background-image: url("../images/top_character_ui_button_comment.png");
	background-color: transparent;
	background-size: 100% auto;
	cursor: pointer;
	transition: opacity 0.3s ease 0s;
}

#kari_top_char #char_list_body .char_list_body_item .cc_modal_button:hover {
	opacity: 0.5;
}




@media only screen and ( max-width: 870px ){

	#kari_top_char #char_list_body #char_list_body_in {
		background-position: center top;
		background-size: 100% auto;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_left {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 0px 0px;
		width: 100%;
		display: block;
		position: relative;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_left img {
		margin: 0px auto 0px auto;
		padding: 0px 0px 0px 0px;
		width: 60%;
		position: absolute;
		position: relative;
		top: 0px;
		left: 0%;
	}

/*
	#kari_top_char #char_list_body .char_list_body_item {
		display: block;
	}
*/

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_in {
		display: block;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_face {
		margin: 20px auto 0px auto;
		padding: 0px 0px 0px 0px;
		display: block;
		width: 60%;

		margin-top: 0px;
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_right {
		margin: 0px auto 0px auto;
		padding: 0px 0px 0px 0px;
		width: 90%;
		display: block;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof {
		margin: 0px 0px 0px 0px;
		padding: 100px 60px 60px 100px;
		padding: 13.3333vw 8vw 8vw 13.3333vw;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_name {
		padding: 0px 0px 0px 12px;
		font-size: 30px;
		line-height: 40px;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_kana {
		padding: 0px 0px 0px 12px;
		font-size: 24px;
		line-height: 26px;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv {
		margin: 20px 0px 20px 0px;
		padding: 0px 0px 0px 12px;
		font-size: 22px;
		line-height: 46px;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv small {
		font-size: 19px;
		margin-right: 0.5em;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof p {
		margin: 20px 0px 20px 0px;
		padding: 0px 18px 0px 12px;
		font-size: 16px;
		line-height: 30px;
	}

	#kari_top_char #char_list_body .char_list_body_item .cc_modal_button {
		top: 0px;
		right: 36px;
		width: 205px;
		height: 104px;

		top: 0px;
		right: 4.8vw;
		width: 27.3333vw;
		height: 13.8666vw;
	}




/*
	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_face {
		margin: 2.6666vw auto 0px auto;
	}
*/

}




@media only screen and ( max-width: 480px ){

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_name {
		padding: 0px 0px 0px 2.5vw;
		font-size: 6.25vw;
		line-height: 8.3333vw;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_kana {
		padding: 0px 0px 0px 2.5vw;
		font-size: 5vw;
		line-height: 5.4166vw;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv {
		margin: 4.1666vw 0px 4.1666vw 0px;
		padding: 0px 0px 0px 2.5vw;
		font-size: 4.5833vw;
		line-height: 9.5833vw;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof .prof_cv small {
		font-size: 3.9583vw;
	}

	#kari_top_char #char_list_body .char_list_body_item .char_list_body_item_prof p {
		margin: 4.1666vw 0px 20px 0px;
		padding: 0px 3.75vw 0px 2.5vw;
		font-size: 3.3333vw;
		line-height: 6.25vw;
	}

}




/* ------------------------------------------------------------------------------------------------ Book */




#kari_top_book {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 560px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 6000;
	background-color: #48914e;
}

#kari_top_book #kari_top_book_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 66% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: 0%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/top_book_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
}

#kari_top_book #kari_top_book_in {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 1000px;
	position: relative;
}

#kari_top_book #kari_top_book_in h2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 134px;
	position: relative;
}

#kari_top_book #kari_top_book_in h2 img {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 100%;
}




@media only screen and ( max-width: 1000px ){

	#kari_top_book {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 56vw 0px;
	}

	#kari_top_book #kari_top_book_in {
		margin: 0px 25px 0px 25px;
		width: auto;
	}

	#kari_top_book #kari_top_book_in h2 {
		height: 134px;
		height: 96px;
	}

}




@media only screen and ( max-width: 750px ){

	#kari_top_book #kari_top_book_in h2 {
		height: 134px;
		height: 12.8vw;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_book #kari_top_book_in {
		margin: 0px 5.2083vw 0px 5.2083vw;
		width: auto;
	}

}




#kari_top_book #kari_top_book_in h3 {
	margin: 50px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

#kari_top_book #kari_top_book_in h3 .h3_line {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: relative;
	width: 100%;
	height: auto;
}

#kari_top_book #kari_top_book_in h3 .h3_line::before {
	margin: -3px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	content: ' ';
	width: 100%;
	height: 6px;
	background-color: #f7efe6;
	top: 50%;
	left: 0px;
}

#kari_top_book #kari_top_book_in h3 .h3_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 15px 0px 15px;
	display: block;
	position: relative;
	text-align: left;
	font-family: 'Holtwood One SC', serif;
	font-size: 47px;
	line-height: 1.0;
	letter-spacing: 0.1em;
	color: #f7efe6;
	text-decoration: none;
	white-space: nowrap;
}

#kari_top_book .book_list {
	margin: 0px -10px 0px -10px;
	padding: 0px 0px 0px 0px;
	width: auto;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	flex-direction: row;
	align-items: flex-start;
}

#kari_top_book .book_list .book_list_item {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	list-style-type: none;
	display: block;
	width: 20%;
}

#kari_top_book .book_list .book_list_item .book_list_item_link {
	margin: 10px 10px 10px 10px;
	padding: 0px 0px 0px 0px;
	display: block;
	transition: opacity 0.3s ease 0s;
}

#kari_top_book .book_list .book_list_item .book_list_item_link:hover {
	opacity: 0.5;
}

#kari_top_book .book_list .book_list_item .book_list_item_link img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
}




@media only screen and ( max-width: 750px ){

	#kari_top_book #kari_top_book_in h3 {
		margin: 50px 0px 20px 0px;
	}

	#kari_top_book #kari_top_book_in h3 .h3_line::before {
		margin: -2px 0px 0px 0px;
		height: 4px;
	}

	#kari_top_book #kari_top_book_in h3 .h3_in {
		margin: 0px 0px 0px 0px;
		padding: 0px 15px 0px 15px;
		font-size: 30px;
	}

	#kari_top_book .book_list {
		margin: 0px -8px 0px -8px;
	}

	#kari_top_book .book_list .book_list_item {
		width: 25%;
	}

	#kari_top_book .book_list .book_list_item .book_list_item_link {
		margin: 8px 8px 8px 8px;
		padding: 0px 0px 0px 0px;
		display: block;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_top_book #kari_top_book_in h3 {
		margin: 10.4166vw 0px 4.1666vw 0px;
	}

	#kari_top_book #kari_top_book_in h3 .h3_line::before {
		margin: -2px 0px 0px 0px;
		height: 4px;
	}

	#kari_top_book #kari_top_book_in h3 .h3_in {
		margin: 0px 0px 0px 0px;
		padding: 0px 3.125vw 0px 3.125vw;
		font-size: 6.25vw;
	}

	#kari_top_book .book_list {
		margin: 0px -1.6666vw 0px -1.6666vw;
	}

	#kari_top_book .book_list .book_list_item {
		width: 33.333%;
	}

	#kari_top_book .book_list .book_list_item .book_list_item_link {
		margin: 1.6666vw 1.6666vw 1.6666vw 1.6666vw;
		padding: 0px 0px 0px 0px;
		display: block;
	}

}




/* ------------------------------------------------------------------------------------------------ Footer */




#kari_footer {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 30px 0px;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 7000;
	background-repeat: repeat-y;
	background-position: left top;
	background-position: center top;
	background-image: url("../images/main_in1_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
}

body.single #kari_footer {
	background-image: url("../images/main_in2_bg01.png");
}

#kari_footer #kari_footer_bg01 {
	margin: 0px 0px 0px 0px;
	padding: 20% 0px 0px 0px;
	display: block;
	position: absolute;
	bottom: 99.9%;
	left: 0px;
	width: 100%;
	height: auto;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center bottom;
	background-image: url("../images/footer_bg01.png");
	background-color: transparent;
	background-size: 100% auto;
	pointer-events: none;
}

body.single #kari_footer #kari_footer_bg01 {
	background-image: url("../images/footer_bg02.png");
}

#kari_footer #main_footer_banner {
	margin: 0px 0px 30px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

#kari_footer #main_footer_banner a {
	margin: 15px 15px 15px 15px;
	padding: 0px 0px 0px 0px;
	display: block;
	box-sizing: border-box;
	transition: opacity 0.3s ease 0s;
}

#kari_footer #main_footer_banner a:hover {
	opacity: 0.5;
}

#kari_footer #main_footer_banner a img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	height: 90px;
}




@media only screen and ( max-width: 480px ){

	#kari_footer {
		margin: 0px 0px 0px 0px;
		padding: 0px 0px 6.25vw 0px;
	}

	#kari_footer #main_footer_banner {
		margin: 0px 0px 6.25vw 0px;
	}

	#kari_footer #main_footer_banner a {
		margin: 3.125vw 3.125vw 3.125vw 3.125vw;
	}

	#kari_footer #main_footer_banner a img {
		height: 18.75vw;
	}

}




#kari_footer #kari_footer_share {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

#kari_footer #kari_footer_share h3 {
	margin: 0px 13px 0px 13px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: left;
	font-family: 'Holtwood One SC', serif;
	font-size: 47px;
	line-height: 1.0;
	letter-spacing: 0.1em;
	color: #6e0f14;
	text-decoration: none;
}

body.single #kari_footer #kari_footer_share h3 {
	color: #ffffff;
}

#kari_footer #kari_footer_share .kari_footer_share_link {
	margin: 0px 13px 0px 13px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 84px;
	height: auto;
	transition: opacity 0.3s ease 0s;
}

#kari_footer #kari_footer_share .kari_footer_share_link:hover {
	opacity: 0.5;
}

#kari_footer #kari_footer_share .kari_footer_share_link img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
}




@media only screen and ( max-width: 750px ){

	#kari_footer #kari_footer_share h3 {
		font-size: 34px;
	}

	#kari_footer #kari_footer_share .kari_footer_share_link {
		width: 60px;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_footer #kari_footer_share h3 {
		margin: 0px 2.7083vw 0px 2.7083vw;
		font-size: 7.0833vw;
	}

	#kari_footer #kari_footer_share .kari_footer_share_link {
		margin: 0px 2.7083vw 0px 2.7083vw;
		width: 12.5vw;
	}

}




#kari_footer #kari_footer_sns {
	margin: 40px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;

	display: flex;
	flex-direction: column;
}

#kari_footer #kari_footer_sns h3 {
	margin: 0px 13px 0px 13px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: center;
	font-family: 'Holtwood One SC', serif;
	font-size: 36px;
	line-height: 1.0;
	letter-spacing: 0.1em;
	color: #6e0f14;
	text-decoration: none;
}

body.single #kari_footer #kari_footer_sns h3 {
	color: #ffffff;
}

#kari_footer #kari_footer_sns .kari_footer_nav_link {
	margin: 13px 13px 0px 13px;
	padding: 0px 0px 0px 0px;
	display: block;
	text-align: center;
	font-size: 16px;
	line-height: 1.0;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	transition: opacity 0.3s ease 0s;
}

body.single #kari_footer #kari_footer_sns .kari_footer_nav_link {
	color: #ffffff;
}

#kari_footer #kari_footer_sns .kari_footer_nav_link:hover {
	opacity: 0.5;
}

#kari_footer #kari_footer_sns .kari_footer_nav_link .kari_footer_nav_link_name {
	margin: 0px 0px 0px 0.5em;
	padding: 4px 4px 4px 4px;
	display: inline-block;
	color: #f3ece4;
	background-color: #f09600;
	border-radius: 5px;
}




@media only screen and ( max-width: 750px ){

	#kari_footer #kari_footer_sns h3 {
		font-size: 26px;
	}

}




@media only screen and ( max-width: 480px ){

	#kari_footer #kari_footer_sns {
		margin: 8.3333vw 0px 0px 0px;
	}

	#kari_footer #kari_footer_sns h3 {
		margin: 0px 2.7083vw 0px 2.7083vw;
		font-size: 5.4166vw;
	}

	#kari_footer #kari_footer_sns .kari_footer_nav_link {
		margin: 2.7083vw 2.7083vw 0px 2.7083vw;
		font-size: 3.3333vw;
	}

	#kari_footer #kari_footer_sns .kari_footer_nav_link .kari_footer_nav_link_name {
		margin: 0px 0px 0px 0.5em;
		padding: 0.8333vw 0.8333vw 0.8333vw 0.8333vw;
		border-radius: 1.0416vw;
	}

}




#kari_footer #kari_footer_nav {
	margin: 70px 0px 70px 0px;
	padding: 0px 20px 0px 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

#kari_footer #kari_footer_nav a {
	margin: 0.5em 0.5em 0.5em 0.5em;
	padding: 0px 0px 0px 0px;
	display: block;
	font-family: 'Holtwood One SC', serif;
	text-align: center;
	font-size: 18px;
	line-height: 18px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	transition: color 0.3s ease 0s;
	white-space: nowrap;
}

body.single #kari_footer #kari_footer_nav a {
	color: #ffffff;
}

body.single #kari_footer #kari_footer_nav a:hover,
#kari_footer #kari_footer_nav .current,
#kari_footer #kari_footer_nav a:hover {
	color: #f09600;
}




@media only screen and ( max-width: 480px ){

	#kari_footer #kari_footer_nav {
		margin: 14.5833vw 0px 14.5833vw 0px;
		padding: 0px 4.1666vw 0px 4.1666vw;
	}

	#kari_footer #kari_footer_nav a {
		margin: 0.5em 0.5em 0.5em 0.5em;
		font-size: 3.75vw;
		line-height: 3.75vw;
	}

}




#kari_footer .cr {
	margin: 0px 0px 0px 0px;
	padding: 0px 20px 0px 20px;
	text-align: center;
	font-size: 16px;
	line-height: 18px;
	letter-spacing: 0.0em;
	color: #6e0f14;
	text-decoration: none;
	font-weight: 400;
}

body.single #kari_footer .cr {
	color: #ffffff;
}




@media only screen and ( max-width: 480px ){

	#kari_footer .cr {
		padding: 0px 4.1666vw 0px 4.1666vw;
		font-size: 3.3333vw;
		line-height: 3.75vw;
	}

}




/* ------------------------------------------------------------------------------------------------ Comment Modal */




.modal_elem {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	z-index: 30000;

	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;

	display: none;
	opacity: 0.0;
}

.modal_elem .modal_elem_overlay {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

.modal_elem .modal_elem_win_cover {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: auto;
	height: auto;

	position: relative;
}

.modal_other_img .modal_elem_win_cover {
	/*transform: translateX(-90px);*/
	left: -90px;
}

.modal_elem .popup_anim {
	/*animation: 0.35s ease-in-out 0.0s 1 alternate modalpopupanim;*/
	animation: 0.35s ease 0.0s 1 alternate modalpopupanim;
}

@keyframes modalpopupanim {
	0% {
		transform: scale(0.75);
	}
	50% {
		transform: scale(1.075);
	}
	100% {
		transform: scale(1.0);
	}
}

.modal_elem .modal_elem_win_cover .modal_elem_win {
	margin: 0px 0px 0px 0px;
	padding: 40px 50px 45px 50px;
	display: block;
	width: 580px;
	height: 400px;
	box-sizing: border-box;
	position: relative;

	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: center top, center 297px, center bottom;
	background-image: url("../images/top_character_ui_modal_frame_top.png"), url("../images/top_character_ui_modal_frame_middle.png"), url("../images/top_character_ui_modal_frame_bottom.png");
	background-color: transparent;
	background-size: 100% 297px, 100% calc( 100% - 297px - 45px ), 100% 45px;
}

.modal_other_img .modal_elem_win_cover .modal_elem_win {
	padding-right: 115px;
}

.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_in {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	overflow: auto;
	width: 100%;
	height: 100%;
}

.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_in2 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
}

.modal_elem .mCS_no_scrollbar .mCustomScrollBox {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	flex-direction: row;
	align-items: center;
}

.modal_elem .modal_elem_win_cover .modal_elem_win h4 {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: auto;
	list-style-type: none;
	text-align: left;
	font-size: 24px;
	line-height: 32px;
	letter-spacing: 0.06em;
	color: #2e4f66;
	text-decoration: none;
	font-weight: 800;
}

.modal_elem .modal_elem_win_cover .modal_elem_win h4 small {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.modal_elem .modal_elem_win_cover .modal_elem_win h4 .cv {
	margin: 0px 0px 0px 1em;
	padding: 0px 0px 0px 0px;
}

.modal_elem .modal_elem_win_cover .modal_elem_win p {
	margin: 20px 0px 20px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	list-style-type: none;
	text-align: left;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.0em;
	color: #2e4f66;
	text-decoration: none;
}

.modal_elem .modal_elem_win_cover .modal_elem_win p:last-child {
	margin-bottom: 0px;
}

.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_other_img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: 90px;
	left: calc( 100% - 100px );
	width: 280px;
	height: auto;

	display: none;
}

.modal_other_img .modal_elem_win_cover .modal_elem_win .modal_elem_win_other_img {
	display: block;
}

.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_other_img img {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	width: 100%;
	height: auto;
}

.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_close {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	display: block;
	position: absolute;
	top: -40px;
	right: -40px;
	width: 96px;
	height: 96px;
	background-repeat: no-repeat;
	background-position: left top;
	background-position: center center;
	background-image: url("../images/top_character_ui_button_close.png");
	background-color: transparent;
	background-size: 100% 100%;
	cursor: pointer;
}




@media only screen and ( max-width: 800px ){

	.modal_other_img .modal_elem_win_cover {
/*
		transform: translateX(-90px);

		transform: translateX( calc( -90px + ( ( 800px - 100vw ) / 2 ) ) );
*/
		left: calc( -90px + ( ( 800px - 100vw ) / 2 ) );
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_other_img {
		top: 90px;
		left: calc( 100% - 100px );
		width: 280px;

		top: calc( 90px + ( 800px - 100vw ) );
		width: calc( 280px - ( 800px - 100vw ) );
	}

}




@media only screen and ( max-width: 700px ){

	.modal_elem .modal_elem_win_cover .modal_elem_win {
		padding: 40px 50px 45px 50px;
		width: 580px;
		height: 400px;
		background-position: center top, center 297px, center bottom;
		background-size: 100% 297px, 100% calc( 100% - 297px - 45px ), 100% 45px;

		padding: 5.7142vw 7.1428vw 6.4285vw 7.1428vw;
		padding: 6.7142vw 7.1428vw 7.4285vw 7.1428vw;
		width: 82.8571vw;
		height: 57.1428vw;
		background-position: center top, center 297px, center bottom;
		background-size: 100% 297px, 100% calc( 100% - 297px - 45px ), 100% 45px;
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win h4 .cv {
		margin: 0px 0px 0px 0em;
		display: block;
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_close {
		top: -5.7142vw;
		right: -5.7142vw;
		width: 13.7142vw;
		height: 13.7142vw;
	}

	/* cast image */

	.modal_other_img .modal_elem_win_cover {
/*
		transform: translateX( calc( -90px + ( ( 800px - 100vw ) / 2 ) ) );

		transform: translateX( -40px );

		transform: translateX( -5.7142vw );
*/
		left: -5.7142vw;
	}

	.modal_other_img .modal_elem_win_cover .modal_elem_win {
		padding-right: 115px;

		padding-right: 16.4285vw;
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win .modal_elem_win_other_img {
		top: calc( 90px + ( 800px - 100vw ) );
		width: calc( 280px - ( 800px - 100vw ) );

		top: 190px;
		left: 480px;
		width: 180px;

		top: 27.1428vw;
		left: 68.5714vw;
		width: 25.7142vw;
	}

}




@media only screen and ( max-width: 480px ){

	.modal_elem .modal_elem_win_cover .modal_elem_win h4 {
		font-size: 5vw;
		line-height: 6.6666vw;
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win p {
		margin: 4.1666vw 0px 4.1666vw 0px;
		font-size: 3.3333vw;
		line-height: 6.25vw;
	}

	.modal_elem .modal_elem_win_cover .modal_elem_win p:last-child {
		margin-bottom: 0px;
	}

}




/* ------------------------------------------------------------------------------------------------ Modal */




#kk_overlay {
	margin: 0px;
	padding: 0px;
	background-color: transparent;
	background-color: rgba( 0, 0, 0, 0.85 );
	background-color: rgba( 157, 234, 231, 0.64 );
	background-repeat: repeat;
	background-position: left top;
	/*background-image: url("../images/common_modal_overlay_bg.png");*/
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 90000;

	display: none;
	filter: alpha(opacity=0);
	-moz-opacity: 0.0;
	opacity: 0.0;
	cursor: pointer;
}



#kk_modal {
	width: 630px;
	height: 0px;
	margin-top: 0px;
	margin-left: -345px;
	padding: 2px;
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 91000;
	background-color: #ffffff;
	background-color: transparent;
	/*background-color: #00d2cc;*/

	display: none;
	filter: alpha(opacity=0);
	-moz-opacity: 0.0;
	opacity: 0.0;
}

.kk_modal_popup_anim {
	animation: 0.35s ease 0.0s 1 alternate modalpopupanim;
}

#kk_modal_inner {
	margin: 0px;
	padding: 0px;
	position: relative;

	padding: 1px;
	border-style: solid;
	border-color: #f78778;
	border-width: 8px;
	box-sizing: border-box;
	background-color: #943636;
	outline: 1px solid #943636;
	outline-offset: 0px;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 5px 5px 0 3px rgba(215,198,179,0.57);

	width: 100% !important;
	height: 100% !important;
	transform: translateY(-24px);
}

#kk_modal_close {
	margin: 0px;
	padding: 0px;
	background-color: transparent;
	background-repeat: no-repeat;
	/*background-position: left top;*/
	background-position: center center;
	background-image: url("../images/top_character_ui_button_close.png");
	background-size: contain;
	position: absolute;

/*
	filter: alpha(opacity=0);
	-moz-opacity: 0.0;
	opacity: 0.0;
*/

	-webkit-transition: opacity 0.3s linear 0s;
	transition: opacity 0.3s linear 0s;

	/*display: none;*/

	width: 96px;
	height: 96px;
	bottom: -36px;
	left: 50%;
	margin-left: -48px;
}

#kk_modal:hover #kk_modal_close {
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}

#kk_modal iframe {
	border: 0;
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
}

#kk_modal img {
	display: block;
	margin: 0;
	padding: 0;
	border-style: solid;
	border-color: #c9caca;
	border-width: 1px;
	box-sizing: border-box;
	border-radius: 0px;
}




@media only screen and ( max-width: 700px ){

	#kk_modal_inner {
		padding: 1px;
		border-width: 8px;
		border-radius: 20px;
		transform: translateY(-24px);
		box-shadow: 5px 5px 0 3px rgba(215,198,179,0.57);

		padding: 1px;
		border-width: 1.1428vw;
		border-radius: 2.8571vw;
		transform: translateY(-3.4285vw);
		box-shadow: 0.7142vw 0.7142vw 0 0.4285vw rgba(215,198,179,0.57);
	}

	#kk_modal_close {
		width: 96px;
		height: 96px;
		bottom: -36px;
		margin-left: -48px;

		width: 13.7142vw;
		height: 13.7142vw;
		bottom: -5.1428vw;
		margin-left: -6.8571vw;
	}

}