@charset "utf-8";
/**
 * layout pc
 */


/* import
--------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;600&display=swap");
@import "init.css";


/* html, body
--------------------------------------------------*/
    html,body{
	position:absolute;
	width:100%;
    min-width:1200px;
	min-height:100%;
	margin:0;
	text-align:left;
	font-family: Verdana,"メイリオ","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",sans-serif;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:300;
	font-feature-settings:"palt";
	letter-spacing:0.075em;
	-webkit-text-size-adjust:none;
	color:#ffffff;
}

main{
	position:relative;
	width:100%;
	overflow:hidden;
}

.position_set_rose{
	position:relative;
	z-index:1;
}

.position_set{
	position:relative;
}

/* ヘッダ */

header{
	position:relative;
	width:100%;
	margin:auto;
}


/* 初期 */
.header_wrap{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 1200px;
	height:80px;

	z-index: 100;
	opacity: 0;

	/* ベースカラー */
	background: rgba(17, 20, 115, 0.7);

	transition:
		opacity 1.6s ease,
		transform 0.4s ease,
		height 0.4s ease;
}



.header_wrap.is-show {
	opacity: 1;
}



/* 背景グラデーション */
.header_wrap::before{
	content: "";
	position: absolute;
	inset: 0;

	background: linear-gradient(
		135deg,
		#718ce0 20%,
		#263b86 100%
	);

	/* Photoshop：乗算 */
	mix-blend-mode: multiply;

	/* Photoshop：不透明度 80% */
	opacity: 0.8;

	pointer-events: none;
}

/* ヘッダー内コンテンツは100%表示 */
.header_wrap > *{
	position: relative;
	z-index: 1;
}


.header_wrap.is-active{
	height:100%;
}


/* スクロール後 */
.header_wrap.scrolled{
}

/* 非表示 */
.header_wrap.hide{
	transform:translateY(-100%);
}


.h_logoh_logo{
	position:relative;
	margin-top:24px;
	margin-left:50px;
	display:inline-block;
}

.h_share_btn_set{
	position: absolute;
	top: 22px;
	right: 156px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.menu_set{
	position: absolute;
	top:0;
	right:50px;
	cursor:pointer;
}

.menu_default {
	transition: opacity 0.3s ease;
}

.menu_over{
	position: absolute;
	top:0;
	left:0;
	opacity:0;
	transition: opacity 0.3s ease;
}

.menu_set.is-active .menu_over {
	opacity: 1;
}

.menu_set.is-active .menu_default {
	opacity: 0;
}


.menu_detail{
	position:absolute;
	top:80px;
	left:0;

	width:100%;
	height:calc(100% - 160px);

	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;

	opacity:0;
	visibility:hidden;
	transform:translateY(-10px);

	transition:
		opacity 0.4s ease,
		transform 0.4s ease,
		visibility 0.4s ease;
}

.menu_detail.is-active{
	opacity:1;
	visibility:visible;
	transform:translateY(0);
}

.menu_detail_line01{
	position:relative;
	margin-bottom:50px;
}

.menu_detail_line02{
	position:relative;
	margin-top:50px;
}

.menu_detail_list{
	display:inline-flex;
	flex-direction:column;
	align-items:stretch;
}

.menu_detail a{
	display:flex;
	align-items:center;
	justify-content:flex-start;

	color:#ffffff;
	font-size:32px;
	line-height:1;
	font-family:
		"ヒラギノ明朝 ProN W3",
		"Hiragino Mincho ProN",
		"游明朝",
		YuMincho,
		serif;
	text-decoration:none;
	letter-spacing:0.2em;

	padding-top:20px;
	padding-bottom:20px;
}

.menu_detail a .menu_cursor{
	margin-right:20px;
	flex-shrink:0;
}

.scroll.over {
	display: inline-flex;
	align-items: center;
}

.scroll.over .menu_cursor {
	transform: translateX(0);
	transition: transform 0.3s ease;
}

.scroll.over:hover .menu_cursor {
	transform: translateX(8px);
}


/* メインビジュアル */

.mv{
	position: relative;
	width: 100%;
	height: 790px;
	overflow: hidden;
	background:#ddf0f8;
}

.mv::before{
	content: "";
	position: absolute;
	inset: 0;
	background: url("../images/mv/mv_bg_pc.jpg") center top / auto 790px no-repeat;
	opacity: 0;
}

.mv.bg-loaded::before{
	animation: mvBgFadeIn 1.2s ease-out forwards;
}

@keyframes mvBgFadeIn{
	0%{
		opacity: 0;
	}

	100%{
		opacity: 1;
	}
}


.mv_frame{
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-680px;
}

.mv_rose_front01{
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-1011px;
	z-index:10;
	
	opacity: 0;
	
	pointer-events:none;
	user-select:none;
}




.mv_rose_front02{
	position:absolute;
	top:221px;
	left:0px;
	z-index:5;
}


.mv_rose_back01{
	position:absolute;
	top:62px;
	left:50%;
	margin-left:-266px;
}

.mv_rose_back02{
	position:absolute;
	top:93px;
	left:50%;
	margin-left:76px;
}

.mv_rose_back03{
	position:absolute;
	top:157px;
	left:50%;
	margin-left:166px;
}

.mv_rose_back04{
	position:absolute;
	top:215px;
	left:50%;
	margin-left:157px;
}

.mv_rose_back05{
	position:absolute;
	top:382px;
	left:50%;
	margin-left:-355px;
}

.mv_rose_back06{
	position:absolute;
	top:535px;
	left:50%;
	margin-left:-219px;
}

.mv_text01{
	position:absolute;
	top:210px;
	left:50%;
	margin-left:-50px;
	z-index:10;
}

.mv_text02{
	position:absolute;
	top:300px;
	left:50%;
	margin-left:-301px;
	z-index:10;
}

.mv_text03{
	position:absolute;
	top:502px;
	left:50%;
	margin-left:-127px;
	z-index:10;
}

.mv_chara01{
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-815px;
	z-index:8;
}

.mv_chara02{
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:60px;
	z-index:7;
}

.mv_copyright01{
	position:absolute;
	bottom:15px;
	left:0;
	margin-left:15px;
	z-index:11;
}



/* コンテンツ背景ブルー */
.blue_bg01{
	position: relative;
	width: 100%;
	background-color: #030541;
	background-image: url("../images/ct01/ct01_bg_pc.jpg");
	background-position: center top;
	background-repeat: repeat-y;
}


/* コンテンツ背景ベージュ */
.beige_bg01{
	position: relative;
	width: 100%;
	background-color: #f7f2eb;
	background-image: url("../images/ct02/ct02_bg_pc.jpg");
	background-position: center top;
	background-repeat: repeat-y;
}



/* コンテンツ背景ブルー02 */
.blue_bg02{
	position: relative;
	width: 100%;
	background-color: #132d76;
	background-image: url("../images/ct03/ct03_bg_pc.jpg");
	background-position: center top;
	background-repeat: repeat-y;
}



/* コンテンツ背景ブルー03 */
.blue_bg03{
	position: relative;
	width: 100%;
	background-color: #accada;
	background-image: url("../images/ct04/ct04_bg_pc.jpg");
	background-position: center top;
	background-repeat: repeat-y;
}


/* コンテンツ01 */
.ct01{
	position:relative;
	padding-top:95px;
	padding-bottom:70px;
}

.ct01_title{
	position:relative;
	margin:0 auto 24px;
}

.ct01_box{
	position:relative;
	width:1000px;
	margin:0 auto 0;
	padding-top:80px;
	padding-bottom:80px;
	background:rgba(255,255,255,0.15);

	/* Photoshop 光彩（外側） */
	box-shadow:
		0 0 0 3px rgba(0, 1, 52, 0.04),
		0 0 7.5px 5px rgba(0, 1, 52, 0.4);
}

.ct01_frame01{
	position:absolute;
	top:12px;
	left:12px;
}

.ct01_frame02{
	position:absolute;
	bottom:12px;
	right:12px;
}

.ct01_caption{
	position:relative;
	margin-left:164px;
	margin-bottom:24px;
	
}

.ct01_box_text01{
	position:relative;
	margin-left:300px;
	font-size:15px;
	color:#cbccec;
	line-height:2;
	letter-spacing:0.05em;
}

.ct01_rose01{
	position:absolute;
	bottom:-55px;
	left:15px;
}

.ct01_parts01{
	position:absolute;
	top:36px;
	left:50%;
	margin-left:-243px;
	z-index:1;
}

.ct01_parts02{
	position:absolute;
	top:185px;
	left:50%;
	margin-left:-471px;
	z-index:1;
}

.ct01_fl01{
	position:absolute;
	top:57px;
	left:50%;
	margin-left:-188px;
}

.ct01_fl02{
	position:absolute;
	top:124px;
	left:50%;
	margin-left:240px;
	z-index:1;
}

.ct01_fl03{
	position:absolute;
	top:192px;
	left:50%;
	margin-left:430px;
	z-index:1;
}

.ct01_fl04{
	position:absolute;
	top:324px;
	left:50%;
	margin-left:383px;
	z-index:1;
}

.ct01_fl05{
	position:absolute;
	top:620px;
	left:50%;
	margin-left:-456px;
	z-index:1;
}




/* コンテンツ02 */
.ct02{
	position:relative;
	padding-top:80px;
	padding-bottom:30px;
}

.ct02_caption{
	position:relative;
	margin:0 auto 25px;
	
}

.ct02_chara_photo_set{
	position:relative;
	width:1000px;
	height:590px;
	margin:0 auto 150px;
	background: url("../images/ct02/ct02_bg01_pc.jpg");
}

.ct02_chara_shadow_wrap{
	position:relative;
	width:1000px;
	height:590px;
	overflow:hidden;
}

.ct02_chara_shadow{
	position:absolute;
	top:0;
	left:0;
}

.ct02_chara_photo{
	position:absolute;
	top:71px;
	left:99px;
}

.ct02_chara_text01{
	position:absolute;
	top:237px;
	left:328px;
}

.ct02_link01{
	position:absolute;
	bottom:0;
	right:0;
	z-index:1;
}

.ct02_chara_position{
	position:relative;
}

.ct02_parts01{
	position:absolute;
	top:-47px;
	left:50%;
	margin-left:-593px;
}

.ct02_parts02{
	position:absolute;
	top:0px;
	left:50%;
	margin-left:-600px;
}

.ct02_parts03{
	position:absolute;
	top:-80px;
	left:50%;
	margin-left:-596px;
}

.ct02_parts04{
	position:absolute;
	top:-40px;
	left:50%;
	margin-left:-612px;
}

.ct02_parts05{
	position:absolute;
	top:-110px;
	left:50%;
	margin-left:-585px;
}

/* 花01 */
.ct02_fl01_01{
	position:absolute;
	top:-25px;
	left:50%;
	margin-left:-435px;
	z-index:1;
}
.ct02_fl01_02{
	position:absolute;
	top:23px;
	left:50%;
	margin-left:-272px;
	z-index:1;
}
.ct02_fl01_03{
	position:absolute;
	top:99px;
	left:50%;
	margin-left:-255px;
	z-index:1;
}
.ct02_fl01_04{
	position:absolute;
	top:7px;
	left:50%;
	margin-left:323px;
	z-index:1;
}
.ct02_fl01_05{
	position:absolute;
	top:120px;
	left:50%;
	margin-left:405px;
	z-index:1;
}
.ct02_fl01_06{
	position:absolute;
	top:175px;
	left:50%;
	margin-left:259px;
	z-index:1;
}
.ct02_fl01_07{
	position:absolute;
	top:243px;
	left:50%;
	margin-left:154px;
	z-index:1;
}
.ct02_fl01_08{
	position:absolute;
	top:313px;
	left:50%;
	margin-left:470px;
	z-index:1;
}
.ct02_fl01_09{
	position:absolute;
	top:633px;
	left:50%;
	margin-left:540px;
	z-index:1;
}


/* 花02 */
.ct02_fl02_01{
	position:absolute;
	top:-34px;
	left:50%;
	margin-left:375px;
	z-index:1;
}
.ct02_fl02_02{
	position:absolute;
	top:93px;
	left:50%;
	margin-left:283px;
	z-index:1;
}
.ct02_fl02_03{
	position:absolute;
	top:28px;
	left:50%;
	margin-left:-374px;
	z-index:1;
}
.ct02_fl02_04{
	position:absolute;
	top:158px;
	left:50%;
	margin-left:-483px;
	z-index:1;
}
.ct02_fl02_05{
	position:absolute;
	top:303px;
	left:50%;
	margin-left:-560px;
	z-index:1;
}
.ct02_fl02_06{
	position:absolute;
	top:350px;
	left:50%;
	margin-left:-516px;
	z-index:1;
}
.ct02_fl02_07{
	position:absolute;
	top:500px;
	left:50%;
	margin-left:480px;
	z-index:1;
}
.ct02_fl02_08{
	position:absolute;
	top:680px;
	left:50%;
	margin-left:572px;
	z-index:1;
}



/* 花03 */
.ct02_fl03_01{
	position:absolute;
	top:-74px;
	left:50%;
	margin-left:316px;
	z-index:1;
}
.ct02_fl03_02{
	position:absolute;
	top:-19px;
	left:50%;
	margin-left:368px;
	z-index:1;
}
.ct02_fl03_03{
	position:absolute;
	top:57px;
	left:50%;
	margin-left:-462px;
	z-index:1;
}
.ct02_fl03_04{
	position:absolute;
	top:417px;
	left:50%;
	margin-left:-549px;
	z-index:1;
}
.ct02_fl03_05{
	position:absolute;
	top:406px;
	left:50%;
	margin-left:414px;
	z-index:1;
}
.ct02_fl03_06{
	position:absolute;
	top:521px;
	left:50%;
	margin-left:481px;
	z-index:1;
}



/* 花04 */
.ct02_fl04_01{
	position:absolute;
	top:-40px;
	left:50%;
	margin-left:435px;
	z-index:1;
}
.ct02_fl04_02{
	position:absolute;
	top:53px;
	left:50%;
	margin-left:252px;
	z-index:1;
}
.ct02_fl04_03{
	position:absolute;
	top:39px;
	left:50%;
	margin-left:-346px;
	z-index:1;
}
.ct02_fl04_04{
	position:absolute;
	top:228px;
	left:50%;	margin-left:-460px;
	z-index:1;
}
.ct02_fl04_05{
	position:absolute;
	top:239px;
	left:50%;
	margin-left:-543px;
	z-index:1;
}
.ct02_fl04_06{
	position:absolute;
	top:417px;
	left:50%;
	margin-left:485px;
	z-index:1;
}
.ct02_fl04_07{
	position:absolute;
	top:540px;
	left:50%;
	margin-left:371px;
	z-index:1;
}
.ct02_fl04_08{
	position:absolute;
	top:725px;
	left:50%;
	margin-left:534px;
	z-index:1;
}



/* 花05 */
.ct02_fl05_01{
	position:absolute;
	top:-44px;
	left:50%;
	margin-left:411px;
	z-index:1;
}
.ct02_fl05_02{
	position:absolute;
	top:79px;
	left:50%;
	margin-left:308px;
	z-index:1;
}
.ct02_fl05_03{
	position:absolute;
	top:36px;
	left:50%;
	margin-left:-355px;
	z-index:1;
}
.ct02_fl05_04{
	position:absolute;
	top:160px;
	left:50%;
	margin-left:-454px;
	z-index:1;
}
.ct02_fl05_05{
	position:absolute;
	top:280px;
	left:50%;
	margin-left:-472px;
	z-index:1;
}
.ct02_fl05_06{
	position:absolute;
	top:389px;
	left:50%;
	margin-left:390px;
	z-index:1;
}
.ct02_fl05_07{
	position:absolute;
	top:529px;
	left:50%;
	margin-left:468px;
	z-index:1;
}
.ct02_fl05_08{
	position:absolute;
	top:851px;
	left:50%;
	margin-left:520px;
	z-index:1;
}













/* コンテンツ03 */
.ct03{
	position:relative;
	padding-top:120px;
	padding-bottom:180px;
}

.ct03_caption{
	position:relative;
	margin:0 auto 35px;
}

.ct03_text01{
	position:relative;
	font-size:16px;
	line-height:2;
	text-align:center;
	color:#40372f;
	margin-bottom:80px;
}

.ct03_link_box01{
	position:relative;
	width:940px;
	margin:auto;
}

.ct03_link_box01 a{
	display:inline-block;
}

.ct03_link02_box{
	position:absolute;
	top:0;
	left:505px;
}



.ct03_parts01{
	position:absolute;
	top:74px;
	left:50%;
	margin-left:-505px;
}

.ct03_parts02{
	position:absolute;
	top:-76px;
	left:50%;
	margin-left:-567px;
}

.ct03_fl01{
	position:absolute;
	top:50px;
	left:50%;
	margin-left:304px;
}

.ct03_fl02{
	position:absolute;
	top:176px;
	left:50%;
	margin-left:170px;
	z-index:1;
}

.ct03_fl03{
	position:absolute;
	top:372px;
	left:50%;
	margin-left:-360px;
}

.ct03_fl04{
	position:absolute;
	top:556px;
	left:50%;
	margin-left:-496px;
}



.ct03_fl05{
	position:absolute;
	top:-25px;
	left:50%;
	margin-left:472px;
}

.ct03_fl06{
	position:absolute;
	top:160px;
	left:50%;
	margin-left:593px;
}

.ct03_fl07{
	position:absolute;
	top:525px;
	left:50%;
	margin-left:-190px;
}





/* コンテンツ04 */
.ct04{
	position:relative;
	padding-top:109px;
	padding-bottom:180px;
}

.ct04_caption01{
	position:relative;
	margin:0 auto 15px;
}

.ct04_text02{
	position:relative;
	font-size:18px;
	line-height:2;
	text-align:center;
	color:#cbccec;
	letter-spacing:0.15em;
	margin-bottom:30px;
}

.ct04_text03 {
	position: relative;
	display: table;
	margin: 0 auto;
	border: solid 1px rgba(255,255,255,0.25);
	background: rgba(50,74,144,0.4);
	text-align: center;
	padding:20px 40px;
	line-height:1;
	font-size:20px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	letter-spacing:0.15em;
	margin-bottom:35px;
}

.ct04_text03_span{
	display:inline;
}

.ct04_photo{
	position:relative;
	margin:0 auto 60px;
	width:1019px;
	height:auto;
}

.ct04_caption02{
	position:relative;
	margin:0 auto 35px;
}

.ct04_text_box01{
	position: relative;
	display: table;
	width:800px;
	margin: 0 auto;
	border: solid 1px rgba(255,255,255,0.25);
	background: rgba(50,74,144,0.4);
	text-align: center;
	padding:25px 0;
	margin-bottom:20px;
}

.ct04_icon{
	position:absolute;
	top:0;
	left:0;
}


.ct04_caption_mini01{
	position:relative;
	margin:0 auto 15px;
}

.ct04_text_box_text{
	position: relative;
	display: table;
	margin: 0 auto 15px;
	line-height:2.2;
	text-align:left;
	font-size:18px;
}

.ct04_text_box_text a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 8px;
	transition: opacity 0.3s ease, text-decoration-color 0.3s ease;
}

.ct04_text_box_text a:hover {
	opacity: 0.6;
	text-decoration: none;
}

.ct04_text_box01 a{
	display:inline-block;
}

.ct04_link_btn01{
	margin:auto;
}

.ct04_link_btn_text{
	position: relative;
	font-size:12px;
	line-height:1.8;
	color:#bbcaf8;
	text-align:center;
	margin-top:30px;
	margin-bottom:70px;
}

.ct04_caption03{
	position:relative;
	margin:0 auto 25px;
}


.ct04_scroll_box {
	width: 700px;
	height: 250px;
	margin: 0 auto;
	padding:25px 40px 25px 25px;
	box-sizing: border-box;
	overflow-y: auto;

	font-size: 13px;
	line-height: 2;
	letter-spacing: 0.15em;
	background: rgba(255, 255, 255, 0.05);
	border-radius:4px;
}

/* 見出し */
.ct04_scroll_text h3 {
	margin: 20px 0 8px;
	padding-bottom: 10px;
	color: #fff;
	font-size: 15px;
	font-weight: bold;
	line-height: 1.6;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.ct04_scroll_text h3:first-child {
	margin-top: 0;
}

/* 本文 */
.ct04_scroll_text p {
	margin: 0 0 15px;
}

/* リンク */
.ct04_scroll_text a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 5px;
	transition: opacity 0.3s ease, text-decoration-color 0.3s ease;
}

.ct04_scroll_text a:hover {
	opacity: 0.6;
	text-decoration: none;
}



/* 注意書き */
.ct04_scroll_text .ct04_note {
	font-size: 12px;
}

/* スクロールバー全体 */
.ct04_scroll_box::-webkit-scrollbar {
	width: 12px;
}

/* レール */
.ct04_scroll_box::-webkit-scrollbar-track {
	background: rgba(255, 255, 255, 0.15);
	border-radius: 10px;
}

/* つまみ */
.ct04_scroll_box::-webkit-scrollbar-thumb {
	background: rgba(255, 255, 255, 0.75);
	border-radius: 10px;
}

/* ホバー */
.ct04_scroll_box::-webkit-scrollbar-thumb:hover {
	background: rgba(255, 255, 255, 0.9);
}




.ct04_caption04{
	position:relative;
	margin:60px auto 25px;
}

.ct04_text04{
	position:relative;
	font-size:18px;
	line-height:2;
	text-align:center;
	margin-bottom:5px;
}

.ct04_text05{
	position:relative;
	font-size:14px;
	line-height:2;
	text-align:center;
}


.ct04_parts01{
	position:absolute;
	top:40px;
	left:50%;
	margin-left:-550px;
}


.ct04_parts02{
	position:absolute;
	top:283px;
	left:50%;
	margin-left:368px;
}


.ct04_parts03{
	position:absolute;
	top:-33px;
	left:50%;
	margin-left:-498px;
}


.ct04_parts04{
	position:absolute;
	top:-40px;
	left:50%;
	margin-left:166px;
}

.ct04_parts05{
	position:absolute;
	top:-17px;
	left:50%;
	margin-left:-480px;
}



.ct04_fl01{
	position:absolute;
	top:50px;
	left:50%;
	margin-left:-415px;
}

.ct04_fl02{
	position:absolute;
	top:124px;
	left:50%;
	margin-left:-498px;
}

.ct04_fl03{
	position:absolute;
	top:320px;
	left:50%;
	margin-left:325px;
}

.ct04_fl04{
	position:absolute;
	top:420px;
	left:50%;
	margin-left:476px;
}

.ct04_fl05{
	position:absolute;
	top:608px;
	left:50%;
	margin-left:536px;
}



.ct04_fl06{
	position:absolute;
	top:-40px;
	left:50%;
	margin-left:-400px;
}

.ct04_fl07{
	position:absolute;
	top:-8px;
	left:50%;
	margin-left:-300px;
}

.ct04_fl08{
	position:absolute;
	top:45px;
	left:50%;
	margin-left:286px;
}

.ct04_fl09{
	position:absolute;
	top:156px;
	left:50%;
	margin-left:363px;
}

.ct04_fl10{
	position:absolute;
	top:210px;
	left:50%;
	margin-left:320px;
}

.ct04_fl11{
	position:absolute;
	top:434px;
	left:50%;
	margin-left:-528px;
}


.ct04_fl12{
	position:absolute;
	top:0px;
	left:50%;
	margin-left:335px;
}

.ct04_fl13{
	position:absolute;
	top:465px;
	left:50%;
	margin-left:-460px;
}

.ct04_fl14{
	position:absolute;
	top:563px;
	left:50%;
	margin-left:-440px;
}

.ct04_fl15{
	position:absolute;
	top:555px;
	left:50%;
	margin-left:-289px;
}








/* コンテンツ05 */
.ct05{
	position:relative;
	padding-top:120px;
	padding-bottom:120px;
}

.ct05_box_top{
	position:relative;
	margin:auto;
}

.ct05_box{
	position:relative;
	width:980px;
	margin:auto;
	background: url("../images/ct05/ct05_frame02_pc.png");
	background-size:980px 100%;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-direction:column;
}

.ct05_logo{
	position:relative;
	margin-top:-20px;
	margin-bottom:20px;
}

.ct05_text01{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	font-size:16px;
	color:#000000;
	margin-bottom:30px;
	font-weight:bold;
}

.ct05_text02{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	font-size:16px;
	color:#000000;
	line-height:2;
	text-align:center;

}


.ct05_box_under{
	position:relative;
	margin:auto;
}

.ct05_parts01{
	position:absolute;
	top:46px;
	left:50%;
	margin-left:-83px;
	z-index:1;
}

.ct05_fl01{
	position:absolute;
	top:33px;
	left:50%;
	margin-left:9px;
	z-index:1;
}

.ct05_fl02{
	position:absolute;
	top:96px;
	left:50%;
	margin-left:237px;
	z-index:1;
}

.ct05_fl03{
	position:absolute;
	top:267px;
	left:50%;
	margin-left:267px;
	z-index:1;
}

.ct05_fl04{
	position:absolute;
	top:328px;
	left:50%;
	margin-left:415px;
	z-index:1;
}

.ct05_fl05{
	position:absolute;
	top:467px;
	left:50%;
	margin-left:250px;
	z-index:1;
}





/* コンテンツ06 */
.ct06{
	position:relative;
	padding-top:120px;
	padding-bottom:140px;
}



.ct06_title{
	position:relative;
	margin:0 auto 0;
	
}

.ct06_parts01{
	position:absolute;
	top:43px;
	left:50%;
	margin-left:-460px;
}

.ct06_parts02{
	position:absolute;
	top:500px;
	left:50%;
	margin-left:175px;
}

.ct06_parts03{
	position:absolute;
	bottom:-80px;
	left:50%;
	margin-left:-612px;
}

.ct06_fl01{
	position:absolute;
	top:172px;
	left:50%;
	margin-left:-310px;
}

.ct06_fl02{
	position:absolute;
	top:270px;
	left:50%;
	margin-left:-367px;
}

.ct06_fl03{
	position:absolute;
	top:713px;
	left:50%;
	margin-left:365px;
}

.ct06_fl04{
	position:absolute;
	top:800px;
	left:50%;
	margin-left:395px;
}

.ct06_fl05{
	position:absolute;
	top:923px;
	left:50%;
	margin-left:333px;
}

.ct06_fl06{
	position:absolute;
	bottom:120px;
	left:50%;
	margin-left:-620px;
}

.ct06_fl07{
	position:absolute;
	bottom:35px;
	left:50%;
	margin-left:-546px;
}

.ct06_fl08{
	position:absolute;
	bottom:-50px;
	left:50%;
	margin-left:-468px;
}



.ct06_spec {
	display: grid;
	grid-template-columns: max-content max-content;
	column-gap: 50px;
	width: fit-content;
	margin: 60px auto 100px;
}

.ct06_spec dt,
.ct06_spec dd {
	margin: 0;
	padding:16px 0 16px;
}

.ct06_spec dt {
	font-size:18px;
	font-weight:bold;
}

.ct06_spec dd {
	font-size:18px;
	color:#c5c6f1;
}

.ct06_pkg01{
	position:relative;
	margin:0 auto 0;
}





/* フッター */
footer{
	position:relative;
	width:100%;
	padding-top:120px;
	padding-bottom:120px;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-direction:column;
	color:#000000;
}


.footer_text01{
	position:relative;
	font-size:16px;
	margin-top:40px;
	line-height:2;
	text-align:center;
}

.footer_text02{
	position:relative;
	font-size:12px;
	margin-top:30px;
	line-height:2;
}

.footer_text03{
	position:relative;
	font-size:12px;
	margin-top:40px;
	line-height:2;
	text-align:center;
}





/* 汎用アニメーション
--------------------------------------------------*/

/* ぼわっとしてからシュッと形になる */
.fadeShadow {
	opacity: 0;
	filter: blur(20px);
	transform: translateX(-100px) scale(1.1);
	transform-origin: top center;

	transition:
		opacity 1.2s ease-out,
		filter 1.2s ease-out,
		transform 1.2s ease-out;
}

.fadeShadow.is-show {
	opacity: 1;
	filter: blur(0);
	transform: translateX(0) scale(1);
}


.fadeShadow02 {
	opacity: 0;
	filter: blur(20px);
	transform: translateX(-30px) scale(1.2);
	transform-origin: top center;

	transition:
		opacity 0.6s ease-out,
		filter 0.6s ease-out,
		transform 0.6s ease-out;
}

.fadeShadow02.is-show {
	opacity: 1;
	filter: blur(0);
	transform: translateX(0) scale(1);
}


.fadeZoom {
	opacity: 0;
	transform: scale(0.95);

	transition:
		opacity 0.4s ease-out,
		transform 0.4s ease-out;
}

.fadeZoom.is-show {
	opacity: 1;
	transform: scale(1);
}


.fadeIn {
	opacity: 0;

	transition: opacity 0.8s ease-out;
}

.fadeIn.is-show {
	opacity: 1;
}


.fadeUp {
	opacity: 0;
	transform: translateY(10px);

	transition:
		opacity 0.4s ease,
		transform 0.4s ease;
}

.fadeUp.is-show {
	opacity: 1;
	transform: translateY(0);
}


/* 左から */
.fadeLeft {
	opacity: 0;
	transform: translate(25px, -15px) scale(0.9);

	transition:
		opacity 0.7s ease-out,
		transform 0.7s ease-out;
}

.fadeLeft.is-show {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}


/* 右から */
.fadeRight {
	opacity: 0;
	transform: translate(-25px, -15px) scale(0.9);

	transition:
		opacity 0.7s ease-out,
		transform 0.7s ease-out;
}

.fadeRight.is-show {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}


.fadeLslide {
	opacity: 0;
	transform: translateX(10px);

	transition:
		opacity 0.4s ease,
		transform 0.8s ease;
}

.fadeLslide.is-show {
	opacity: 1;
	transform: translateX(0);
}


.fadeRslide {
	opacity: 0;
	transform: translateX(-10px);

	transition:
		opacity 0.4s ease,
		transform 0.8s ease;
}

.fadeRslide.is-show {
	opacity: 1;
	transform: translateX(0);
}


.fadeZoom02 {
	opacity: 0;
	transform: scale(1.2);

	transition:
		opacity 0.8s ease-out,
		transform 0.8s ease-out;
}

.fadeZoom02.is-show {
	opacity: 1;
	transform: scale(1);
}


/* 漫画用 */
.fadefix {
	opacity: 0;
	transform: scale(1.3) rotate(-8deg);

	transition:
		opacity 0.7s cubic-bezier(0.2, 0.8, 0.25, 1),
		transform 0.7s cubic-bezier(0.2, 0.8, 0.25, 1);
}

.fadefix.is-show {
	opacity: 1;
	transform: scale(1) rotate(0deg);
}



/* オープニングアニメーション
--------------------------------------------------*/

/* フレーム */
.mv_frame {
	opacity: 0;

	transition: opacity 2.4s ease;
}

.mv_frame.is-show {
	opacity: 1;
}


/* 前景バラ01 */
.mv_rose_front01 {
	opacity: 0;
	bottom: -5%;
	transform: scale(0.95);

	transition:
		opacity 0.6s ease-out,
		bottom 0.6s ease-out,
		transform 0.6s ease-out;
}

.mv_rose_front01.is-show {
	opacity: 1;
	bottom: 0;
	transform: scale(1);
}


/* 前景バラ02 */
.mv_rose_front02 {
	opacity: 0;

	transition: opacity 1.2s ease-out;
}

.mv_rose_front02.is-show {
	opacity: 1;
}


/* キャラクター */
.mv_chara01,
.mv_chara02 {
	opacity: 0;

	transition:
		opacity 0.8s ease,
		transform 0.8s ease;
}

.mv_chara01 {
	transform: translateX(-60px);
}

.mv_chara02 {
	transform: translateX(60px);
}

.mv_chara01.is-show,
.mv_chara02.is-show {
	opacity: 1;
	transform: translateX(0);
}



/* テキスト */
.mv_text01,
.mv_text02,
.mv_text03 {
	opacity: 0;
}

.mv_text01,
.mv_text03 {
	transition: opacity 0.4s ease-out;
}

.mv_text02 {
	transform: scale(0.9);

	transition:
		opacity 0.8s ease-out,
		transform 0.8s ease-out;
}

.mv_text01.is-show,
.mv_text03.is-show {
	opacity: 1;
}

.mv_text02.is-show {
	opacity: 1;
	transform: scale(1);
}



/* 背景バラ01 */
.mv_rose_back01 {
	opacity: 0;
	transform: scale(0.85);

	transition:
		opacity 0.8s ease-out,
		transform 0.8s ease-out;
}

.mv_rose_back01.is-show {
	opacity: 1;
	transform: scale(1);
}



/* 背景バラ02〜04 */
.mv_rose_back02,
.mv_rose_back03,
.mv_rose_back04 {
	opacity: 0;
	transform: translate(-25px, -15px) scale(0.9);

	transition:
		opacity 0.7s ease-out,
		transform 0.7s ease-out;
}

.mv_rose_back02.is-show,
.mv_rose_back03.is-show,
.mv_rose_back04.is-show {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}



/* 背景バラ05〜06 */
.mv_rose_back05,
.mv_rose_back06 {
	opacity: 0;
	transform: translate(25px, -15px) scale(0.9);

	transition:
		opacity 0.7s ease-out,
		transform 0.7s ease-out;
}

.mv_rose_back05.is-show,
.mv_rose_back06.is-show {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}


/* コピーライト */
.mv_copyright01 {
	opacity: 0;

	transition: opacity 1s ease;
}

.mv_copyright01.is-show {
	opacity: 1;
}



/* フローティングボタン
--------------------------------------------------*/

.go_top {
	position: fixed;
	right: 20px;
	bottom: 20px;

	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);

	transition:
		opacity 0.4s,
		transform 0.4s,
		visibility 0.4s;

	z-index: 100;

	width: 51px;
	height: 51px;
	border-radius: 50%;
	background: #ffffff;
	text-decoration: none;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	gap: 6px;

	box-shadow:
		0 0 0 3px rgba(0, 1, 52, 0.04),
		0 0 7.5px 5px rgba(0, 1, 52, 0.4);
}

.go_top.show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}


.go_shop {
	position: fixed;
	right: 27px;
	bottom: 78px;

	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);

	transition:
		opacity 0.2s,
		transform 0.2s,
		visibility 0.2s;

	z-index: 100;

	width: 135px;
	height: 135px;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background:
		linear-gradient(
			135deg,
			rgba(178, 168, 125, 0.8) 0%,
			rgba(128, 103, 38, 0.8) 100%
		),
		#695517;

	color: #ffffff;
	text-decoration: none;

	gap: 5px;

	box-shadow:
		0 0 0 3px rgba(0, 1, 52, 0.04),
		0 0 7.5px 5px rgba(0, 1, 52, 0.4);

	text-align: center;
}

.go_top::before {
	content: "";
	display: block;

	width: 0;
	height: 0;

	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 10px solid #111472;
}

.go_shop:hover {
	filter: brightness(1.1) saturate(1.1);
}

.go_shop.show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}



/* マウスオーバー
--------------------------------------------------*/

.over {
	transition: opacity 0.3s ease;
}

.over:hover {
	opacity: 0.7;
}


.over02 {
	transition:
		opacity 0.4s ease,
		filter 0.4s ease,
		transform 0.4s ease;
}

.over02:hover {
	opacity: 0.7;
	filter: saturate(2);
	transform: translateY(-4px);
}


.over03 {
	transition: filter 0.4s ease;
}

.over03:hover {
	filter: brightness(1.15) saturate(1.15);
}



/* 裏ラベル
--------------------------------------------------*/

.mfp-content {
	height: 100%;
}

.back_label_box {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

	display: flex;
	justify-content: center;
	align-items: center;
}

.back_label_contents {
	position: relative;
}

.back_label_close01 {
	position: absolute;
	top: -26px;
	left: 50%;
	margin-left: 338px;
	cursor: pointer;
}



/* 漫画
--------------------------------------------------*/

.manga_set {
	position: relative;
}



/* ®
--------------------------------------------------*/

.r_mark {
	position: relative;
	font-size: 120%;
	margin-right: 1px;
	margin-left: 2px;
	display: inline-block;
}

.menu_detail .r_mark{
	position: relative;
	font-size: 80%;
	margin-top: -5px;
	margin-right: 1px;
	margin-left: -2px;
	display: inline-block;
}



/* テンプレートエリア
--------------------------------------------------*/

.rps_visible {
	display: none;
}

.rps_del {
	display: block;
}