@charset "utf-8";

/*
	/event/ikebana/flower-kingdom/css/style.css
	-----------------------------------
	v1.0
	Last Updated: 2026-04-21
	Copyright: CBC TELEVISION CO.,LTD. All rights Reserved.
	-----------------------------------
	[Updated]
	v1.0		2026-03-09
	-----------------------------------
*/

/* ***********************************************************

		リセットCSS

*********************************************************** */
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.min.css */
*,::before,::after{box-sizing:border-block;border-style:solid;border-width:0;min-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-block;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{text-align:left;font-weight:700}

/* Gナビの虫眼鏡のレイアウト崩れ対応用 */
svg{vertical-align:baseline}

/* ***********************************************************

		基本設定

*********************************************************** */
html {
	/* font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif; */
	font-family: 'Noto Sans JP', sans-serif;
	/* -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; */
	background: #fff;
	font-size: 62.5%;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	line-height: 1.5;
	color: #523931;
	word-break: break-word;
	-webkit-text-size-adjust: 100%;
}
@media print, screen and (min-width: 641px) {
	body {
		min-width: 1240px;
	}
}

/* デフォルトリンクカラー */
a, a:link {
	color: #0000DE;
}
a:visited {
	color: #941D55;
}
a:active,
a:hover {
	color: #CC0000;
}
a:focus {
	color: #CC0000;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* FireFox リンク選択時の点線を消す */
a:link,
a:visited,
a:active,
a:hover {
	overflow: hidden;
	outline: none;
}

/* 画像の横幅 */
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	image-rendering: -webkit-optimize-contrast;
}
.img-max {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
@media only screen and (max-width: 640px) {
	.img-max-sp {
		width: 100%;
		height: auto;
		vertical-align: middle;
	}
}
@media print, screen and (min-width: 641px) {
	.img-max-pc {
		width: 100%;
		height: auto;
		vertical-align: middle;
	}
}

figure {
	padding: 0;
	margin: 0;
}

*, *:before, *:after {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

/* -----------------------------------------------------

	非表示設定

----------------------------------------------------- */
@media only screen and (max-width: 640px) {
	.hide-sp {
		display: none !important;
	}
	#global-nav:nth-of-type(1) {
		display: none;
	}
}
@media print, screen and (min-width: 641px) {
	.hide-pc {
		display: none !important;
	}
}

.hide-text {
	font-size: 0;
	line-height: 0;
	text-indent: -9999px;
	list-style-type: none;
	height: 0;
	overflow: hidden;
}


/* ***********************************************************

	ヘッダー

*********************************************************** */
.ikebana .header {
	position: relative;
}
.ikebana .header h1 {
	font-size: 0px;
	line-height: 0px;
	text-indent: -9999px;
	text-decoration: none;
}
.ikebana .header .exhibition-hall {
	text-align: center;
	position: absolute;
}

@media only screen and (max-width: 640px) {
	.ikebana .header {
		width: calc(690 / 750 * 100%);
		padding: calc(36 / 750 * 100%) 0 0;
		margin: 0 auto;
	}
	.ikebana .header h1 {
		background: url('../images/header_sp.png') no-repeat center top;
		background-size: cover;
		padding: calc(774 / 690 * 100%) 0 0;
	}
	.ikebana .header .exhibition-hall {
		width: calc(620 / 690 * 100%);
		height: calc(120 / 774 * 100%);
		font-size: calc(32 / 750 * 100vw);
		top: calc(630 / 774 * 100%);
		left: calc(30 / 690 * 100%);
	}
}
@media screen and (min-width: 641px) {
	.ikebana .header {
		width: 1200px;
		margin: 0 auto;
	}
	.ikebana .header h1 {
		background: url('../images/header_pc.png') no-repeat center top;
		width: 1200px;
		height: 414px;
		margin: 0 auto;
	}
	.ikebana .header .exhibition-hall {
		width: 500px;
		height: 80px;
		font-size: 2.0rem;
		top: 330px;
		left: 350px;
	}
}


/* ***********************************************************

	フッター

*********************************************************** */
.ikebana .footer {
	background: #e1dbdb;
}
.ikebana .footer-inner {
	width: 92%;
	margin: 0 auto;
}
.ikebana .footer-inner p {
	color: #523931;
	font-size: 1.4rem;
	line-height: 1.5;
	margin: 0;
}
.ikebana .footer-inner p a,
.ikebana .footer-inner p a:link,
.ikebana .footer-inner p a:visited {
	color: #523931;
	text-decoration: none;
}
.ikebana .footer-inner p a:active,
.ikebana .footer-inner p a:hover {
	color: #523931;
	text-decoration: underline;
}
.ikebana .footer-inner p a:focus {
	color: #523931;
}

@media only screen and (max-width: 640px) {
	.ikebana .footer {
		padding: 0;
	}
	.ikebana .footer-inner {
		padding: 50px 0 120px;
	}
	.ikebana .footer-inner p {
	}
}
@media print, screen and (min-width: 641px) {
	.ikebana .footer {
	}
	.ikebana .footer-inner {
		padding: 60px 0;
	}
	.ikebana .footer-inner p {
		text-align: center;
	}
}

/* pageup */
.ikebana .pageup {
	margin: 0;
}
.ikebana .pageup a {
	display: block;
	background: url('../images/pageup.png') no-repeat 0 0;
	background-size: 100% auto;
	font-size: 0px;
	line-height: 0px;
	text-indent: -9999px;
	text-decoration: none;
	position: fixed;
}
@media only screen and (max-width: 640px) {
	.ikebana .pageup a {
		width: calc(91 / 750 * 100vw * 0.9);
		height: calc(92 / 750 * 100vw * 0.9);
		right: 12px;
		bottom: 10px;
	}
}
@media print, screen and (min-width: 641px) {
	.ikebana .pageup a {
		width: 61px;
		height: 62px;
		right: 20px;
		bottom: 30px;
		transition: 0.3s ease-in-out;
	}
	.ikebana .pageup a:hover {
		opacity: 0.7;
	}
}


/* ***********************************************************

	メイン

*********************************************************** */
@media only screen and (max-width: 640px) {
	.ikebana .main {
		font-size: calc(30 / 750 * 100vw);
		font-weight: 500;
	}
}
@media print, screen and (min-width: 641px) {
	.ikebana .main {
		font-size: 1.8rem;
		font-weight: 400;
		padding: 20px 0 0;
	}
}


/* ***********************************************************

	コンテンツ

*********************************************************** */
@media only screen and (max-width: 640px) {
	.ikebana .content {
		padding: calc(90 / 750 * 100vw) 0;
	}
}
@media print, screen and (min-width: 641px) {
	.ikebana .content {
		padding: 90px 0;
	}
}

/* block */
.ikebana .block {
	margin: 0 auto;
}

@media only screen and (max-width: 640px) {
	.ikebana .block {
		width: calc(690 / 750 * 100%);
	}
}
@media screen and (min-width: 641px) {
	.ikebana .block {
		width: 1200px;
	}
}

/* back*/
.ikebana .back {
	text-align: center;
}
.ikebana .back a {
	display: inline-block;
	background: #e7557e;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

@media only screen and (max-width: 640px) {
	.ikebana .back a {
		width: calc(320 / 750 * 100vw);
		border-radius: calc(42 / 750 * 100vw);
		padding: calc(14 / 750 * 100vw) 1.0em calc(18 / 750 * 100vw);
	}
}
@media screen and (min-width: 641px) {
	.ikebana .back a {
		border-radius: 36px;
		padding: 12px 36px 14px;
		transition: 0.3s ease-in-out;
	}
	.ikebana .back a:hover {
		opacity: .7;
	}
}


/* ***********************************************************
	block01
*********************************************************** */
.ikebana #block01 {
}

.ikebana #block01 .monthly-flower-box {
	background: #f8f4f4;
	position: relative;

	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
.ikebana #block01 .monthly-flower-box::before {
	content: "";
	background: #81b93c;
	position: absolute;
	top: 0;
}
.ikebana #block01 .monthly-flower-box:last-child::before {
	height: 100%;
}

.ikebana #block01 .monthly-flower-box .monthly-head {
	background: #81b93c;
	color: #fff;
	line-height: 1.1;
	font-weight: 600;
	text-align: center;
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;
}
.ikebana #block01 .monthly-flower-box .monthly-head span {
	letter-spacing: -0.01em;
}

.ikebana #block01 .monthly-flower-box .monthly-detail {
}

.ikebana #block01 .monthly-flower-box .monthly-flower {
	color: #481d1d;
	font-weight: 600;
	border-top: 1px solid #481d1d;
	border-bottom: 1px solid #481d1d;
}

.ikebana #block01 .monthly-flower-box .monthly-schedule {
}
.ikebana #block01 .monthly-flower-box .monthly-schedule h4 {
	background: #e7557e;
	color: #fff;
}
.ikebana #block01 .monthly-flower-box .monthly-schedule p {
	background: #fff;
}

.ikebana #block01 .monthly-flower-box .monthly-work {
	text-align: center;
}
.ikebana #block01 .monthly-flower-box .monthly-work .photo a {
	display: block;
	background: #e1dbdb;
	position: relative;
}
.ikebana #block01 .monthly-flower-box .monthly-work .photo figure img {
	object-fit: contain;
}
.ikebana #block01 .monthly-flower-box .monthly-work .photo .icon {
	position: absolute;
}

@media only screen and (max-width: 640px) {
	.ikebana #block01 .monthly-flower-box {
		border-radius: calc(30 / 750 * 100vw);
		padding: calc(90 / 750 * 100vw) calc(30 / 750 * 100vw) calc(60 / 750 * 100vw) 0;
		margin: 0 0 calc(90 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box::before {
		width: calc(4 / 750 * 100vw);
		height: calc(100% + (96 / 750 * 100vw));
		left: calc(58 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box:last-child {
		margin: 0 0 calc(80 / 750 * 100vw);
	}

	.ikebana #block01 .monthly-flower-box .monthly-head {
		width: calc(120 / 750 * 100vw);
		height: calc(120 / 750 * 100vw);
		font-size: calc(24 / 750 * 100vw);
		border-radius: calc(60 / 750 * 100vw);
		margin: calc(124 / 750 * -100vw) 0 0;
	}
	.ikebana #block01 .monthly-flower-box .monthly-head span {
		font-size: calc(48 / 750 * 100vw);
	}

	.ikebana #block01 .monthly-flower-box .monthly-detail {
		width: calc(100% - (124 / 750) * 100vw);
		padding: calc(4 / 750 * 100vw) 0 0;
	}

	.ikebana #block01 .monthly-flower-box .monthly-info {
	}

	.ikebana #block01 .monthly-flower-box .monthly-flower {
		padding: calc(14 / 750 * 100vw) 0.6em calc(10 / 750 * 100vw);
		margin: 0 auto calc(14 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-flower p {
		font-size: calc(28 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-flower h3 {
		font-size: calc(46 / 750 * 100vw);
	}

	.ikebana #block01 .monthly-flower-box .monthly-note {
		margin: 0 auto calc(32 / 750 * 100vw);
	}

	.ikebana #block01 .monthly-flower-box .monthly-schedule {
		text-align: center;
		margin: 0 auto calc(38 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-schedule h4 {
		padding: calc(6 / 750 * 100vw) 0 calc(8 / 750 * 100vw);
		border-radius: calc(32 / 750 * 100vw) calc(32 / 750 * 100vw) 0 0;
	}
	.ikebana #block01 .monthly-flower-box .monthly-schedule p {
		padding: calc(6 / 750 * 100vw) 0.6em calc(12 / 750 * 100vw);
		border-radius: 0 0 calc(32 / 750 * 100vw) calc(32 / 750 * 100vw);
	}

	.ikebana #block01 .monthly-flower-box .monthly-work {
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo {
		width: calc(380 / 750 * 100vw);
		margin: 0 auto calc(18 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo a {
		width: calc(380 / 750 * 100vw);
		height: calc(380 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo figure img {
		width: calc(380 / 750 * 100vw);
		height: calc(380 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo .icon {
		width: calc(91 / 750 * 100vw);
		height: calc(91 / 750 * 100vw);
		bottom: calc(10 / 750 * 100vw);
		right: calc(10 / 750 * 100vw);
	}
	.ikebana #block01 .monthly-flower-box .monthly-work h4 {
		font-weight: 500;
	}
}
@media print, screen and (min-width: 641px) {
	.ikebana #block01 .monthly-flower-box {
		border-radius: 35px;
		padding: 40px 35px 30px 30px;
		margin: 0 0 84px;
	}
	.ikebana #block01 .monthly-flower-box::before {
		width: 3px;
		height: calc(100% + 88px);
		left: 88px;
	}
	.ikebana #block01 .monthly-flower-box:last-child {
		margin: 0 0 72px;
	}

	.ikebana #block01 .monthly-flower-box .monthly-head {
		width: 120px;
		height: 120px;
		font-size: 2.0rem;
		border-radius: 60px;
		padding: 0 0 4px;
		margin: -80px 0 0;
	}
	.ikebana #block01 .monthly-flower-box .monthly-head span {
		font-size: 5.0rem;
	}

	.ikebana #block01 .monthly-flower-box .monthly-detail {
		width: 980px;

		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: space-between;
	}

	.ikebana #block01 .monthly-flower-box .monthly-info {
		width: 620px;
	}

	.ikebana #block01 .monthly-flower-box .monthly-flower {
		margin: 0 auto 12px;

		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	.ikebana #block01 .monthly-flower-box .monthly-flower p {
		width: 170px;
		font-size: 1.6rem;
		text-align: center;
		border-right: 1px solid #481d1d;
		padding: 8px 0;
	}
	.ikebana #block01 .monthly-flower-box .monthly-flower h3 {
		width: 450px;
		font-size: 3.0rem;
		padding: 4px 0.8em 8px;
	}

	.ikebana #block01 .monthly-flower-box .monthly-note {
		line-height: 1.8;
		margin: 0 auto 24px;
	}

	.ikebana #block01 .monthly-flower-box .monthly-schedule {
		width: 620px;

		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
	}
	.ikebana #block01 .monthly-flower-box .monthly-schedule h4 {
		width: 90px;
		padding: 6px 0 8px 4px;
		border-radius: 20px 0 0 20px;

		display: flex;
		align-items: center;
		justify-content: center;
	}
	.ikebana #block01 .monthly-flower-box .monthly-schedule p {
		width: 530px;
		padding: 6px 1.0em 8px;
		border-radius: 0 20px 20px 0;
	}

	.ikebana #block01 .monthly-flower-box .monthly-work {
		width: 325px;
		font-size: 1.6rem;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo {
		width: 240px;
		margin: 0 auto 10px;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo a {
		width: 240px;
		height: 240px;
		transition: 0.3s ease-in-out;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo a:hover {
		opacity: .7;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo figure img {
		width: 240px;
		height: 240px;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work .photo .icon {
		width: 50px;
		height: 50px;
		bottom: 10px;
		right: 10px;
	}
	.ikebana #block01 .monthly-flower-box .monthly-work h4 {
		font-weight: 400;
	}
}


/* ***********************************************************

		youtube設定

*********************************************************** */
@media print, screen and (min-width: 641px) {
	.ikebana .youtube-block .youtube {
		width:560px;
	}
}
.ikebana .youtube-block .youtube {
	margin: 0 0 1em;
}

.ikebana .youtube-block .youtube-inner {
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.ikebana .youtube-block .youtube iframe{
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
}


/* ***********************************************************

		googlemap

*********************************************************** */
.ggmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* ***********************************************************

		lity

*********************************************************** */
.lity {
	background: rgba(0, 0, 0, 0.8) !important;
}

@media only screen and (max-width: 640px) {
	.lity-container {
		max-width: 94% !important;
		max-height: 90% !important;
	}
}

/* ***********************************************************

		bg-circles

*********************************************************** */
.bg-circles {
	position: fixed;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100vh;
	overflow: hidden;
	pointer-events: none;
}

.circle {
	position: absolute;
	left: 50%;
	top: 50%;
	animation-name: circle_rotate;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}
.circle::before {
	content: "";
	display: block;
	position: absolute;
	border-radius: 50%;
	/* opacity: 0.4; */
	transform: translate(-50%, -50%)
}

.circle:nth-child(1) {
	animation-duration: 35000ms;
}
.circle:nth-child(1)::before {
	left: -150px;
	top: 150px;
	width: 460px;
	height: 460px;
	background: radial-gradient(rgba(226, 246, 227, 1) 0%, rgba(68, 102, 206, 0) 70%);
}

.circle:nth-child(2) {
	animation-duration: 30000ms;
	animation-direction: reverse;
}
.circle:nth-child(2)::before {
	left: 250px;
	top: -250px;
	width: 500px;
	height: 500px;
	background: radial-gradient(rgba(255, 247, 217, 1) 0%, rgba(249, 215, 122, 0) 70%);
}

.circle:nth-child(3) {
	animation-duration: 25000ms;
}
.circle:nth-child(3)::before {
	left: 300px;
	top: 200px;
	width: 500px;
	height: 500px;
	background: radial-gradient(rgba(255, 220, 217, 1) 0%, rgba(193, 26, 81, 0) 70%);
}

@media only screen and (max-width: 640px) {
	.circle:nth-child(1)::before {
		left: -50px;
		top: 50px;
		width: 320px;
		height: 320px;
	}

	.circle:nth-child(2)::before {
		left: 150px;
		top: -150px;
		width: 350px;
		height: 350px;
	}

	.circle:nth-child(3)::before {
		left: 250px;
		top: 120px;
		width: 400px;
		height: 400px;
	}
}

@keyframes circle_rotate {
	0% {
		transform: rotate(0deg);
		opacity: 1;
	}
	40% {
		opacity: 0.2;
	}
	60% {
		opacity: 1;
	}
	60% {
		opacity: 0.6;
	}
	100% {
		transform: rotate(360deg);
		opacity: 1;
	}
}
