@charset "utf-8";

/* =============================================================
    common 共通
============================================*/
:root {
	--color_BLK: #231815;
	--color_ORG: #f6a924;
	--color_YLW: #fff254;
	--color_GRN: #829db8;
	--color_RED: #e60033;
	--color_PNK: #eb6da5;
	--color_BLU: #48ace2;
	--color_lBLU: #bbe2f1;
	--fontS : clamp(16px,2.2vw,22px);
	--fontM : clamp(18px,2.8vw,28px);
	--fontL : clamp(20px,4vw,38px);
	--gap_160px : clamp(54px, 20vw, 160px);
	--gap_96px: clamp(32px, 10vw, 96px);
	--gap_80px: clamp(30px, 8vw, 80px);
	--gap_64px: clamp(22px, 6vw, 64px);
	--gap_48px: clamp(20px, 4vw, 48px);
	--gap_32px: clamp(16px, 3vw, 32px);
	--gap_24px: clamp(12px, 2vw, 24px);
	--gap_16px: clamp(6px, 1.5vw, 16px);
	--gap_8px: clamp(3px, 1vw, 8px);
}
body {
	width: 100%;
	position: relative;
}

body,figure,h1,h2,h3,h4,h5,h6,li,ol,p,ul,dl,dt,dd {
	margin: 0;
	padding: 0;
}
h1,h2,h3,h4,h5,h6,p {
	font-size: inherit;
	font-weight: inherit;
}
li,ol,ul {
	list-style-type: none;
}
table {
	width: 100%;
}

#page {
	font-size: clamp(14px, 2.8vw, 18px);
	color: var(--color_BLK);
	font-family: "Noto Sans CJK JP", Lato, "Noto Sans JP", "游ゴシック Medium", 游ゴシック体, "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.2;
	margin: 0 auto;
	max-width: 1920px;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt" 1;
	position: relative;
	/* 背景fixed　safari対応 ←　これ使う場合は必要*/
}
#page * {
	box-sizing: border-box;
}
#page img {
	width: 100%;
	border: 0;
	vertical-align: top;
}
#page a {
	transition: all 0.3s;
	text-decoration: none;
}
#page a:not(.g_navi a):hover {
	opacity: 0.7;
}
#page a[tabindex*="-1"] {
	pointer-events: none;
}
#page a[tabindex*="-1"]:hover {
	opacity: 1;
}
#page b {
	font-weight: inherit;
}
#page em {
	font-style: normal;
	font-weight: bold;
}
#page button {
	cursor: pointer;
}
@media screen and (min-width: 768px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}

/* ==================================
    背景fixed　safari対応
============================*/
.page_bg {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    clip: rect(0, auto, auto, 0);
    z-index: -1;
}
.page_bg:before {
    content: '';
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
	background: url(/event/reptiles2026winter/myrep/images/bg_pc.jpg) center center repeat;
}

.serif {
	font-family: 'Shippori Mincho', serif;
	font-weight: 600;
}
.arial {
	font-family: Arial;
}

.flex {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex.col2 .flex_item {
    width: calc(96% / 2);
}
@media screen and (max-width: 767px) {
    .flex.col2 .flex_item {
        width: clamp(180px, 100%, 450px);
        margin: 0 auto;
    }
}

.inner_wrap {
	padding: 0 var(--gap_24px);
	margin: 0 auto;
	max-width: 1450px;
}
.inner_wrap.max {
	max-width: 100%;
}

.ib {
	font-size: inherit !important;
	display: inline-block;
}
.hidden {
    display: none !important;
}
.red {
	color: var(--color_RED);
}
.ylw {
	color: var(--color_YLW);
}

.img_thumb {
	width: min(70%,380px);
	margin-inline: auto;
}
.img_thumb a {
	color: #fff !important;
	box-shadow: 0 0 var(--gap_8px) var(--color_GRN);
	display: block;
	position: relative;
}
.img_thumb a::after {
	font-size: clamp(18px, 3vw, 22px);
	color: var(--color_BLK);
	position: absolute;
	content: '\f00e';
	bottom: -0.5em;
	right: -0.5em;
	text-shadow: 0 0 0.2em #fff,0 0 0.3em #fff;
	font-family: "Font Awesome 6 Free","Font Awesome 6 Brands";
    font-weight: 900;
}

.btn_wrap {
	text-align: center;
}
.btn {
	font-size: 1.25em;
	color: #fff;
	font-weight: bold;
	padding: 0.8em 1em;
	margin: 0 auto;
	line-height: 1.2;
	border-radius: 0.6em;
	display: inline-block;
}

#btm_btn_area {
	position: relative;
    z-index: 1000;
}
.side_nav {
    text-align: right;
    margin-inline: auto;
    margin-bottom: var(--gap_16px);
	width: min(94%, 700px);
}
.side_nav a {
    font-size: clamp(28px, 6vw, 38px);
	line-height: 1;
    color: var(--color_BLK) !important;
    text-shadow: 0 0 0.2em var(--color_YLW), 0 0 0.2em var(--color_YLW),0 0 0.2em var(--color_YLW),0 0 0.3em var(--color_YLW),0 0 0.3em var(--color_YLW);
    margin-block: var(--gap_8px);
    display: inline-block;
}

#btn_pagetop {
    /* right: clamp(8px, 2vw, 16px); */
    right: 0;
}
#btn_pagetop2 {
    left: var(--gap_24px);
}
#btn_pagetop, #btn_pagetop2 {
	position: fixed;
    bottom: var(--gap_24px);
	left: 50%;
    transform: translateX(-50%);
    width: 100%;
    z-index: 90;
}
#btn_pagetop a, #btn_pagetop2 a {
    display: inline-block;
    /* display: block; */
}
#btn_pagetop > a {
	text-align: center;
	position: relative;
	z-index: 110;
	width: clamp(30px,14vw,50px);
}
#btn_pagetop > a i {
	font-size: clamp(28px, 6vw, 38px);
	color: var(--color_BLK) !important;
    text-shadow: 0 0 0.2em var(--color_YLW), 0 0 0.2em var(--color_YLW),0 0 0.2em var(--color_YLW),0 0 0.3em var(--color_YLW),0 0 0.3em var(--color_YLW);
}

#btn_pagetop2 > i {
    font-size: 1.4em;
    text-shadow: 0 0 0.2em #000, 0 0 0.3em #000;
    color: #fff;
    margin-bottom: var(--gap_8px);
    display: inline-block;
    cursor: pointer;
    position: relative;
    z-index: 999;
}
#btn_pagetop2 a {
    font-size: clamp(14px, 1.8vw, 22px);
	font-weight: bold;
    text-align: center;
    text-decoration: none;
    /* text-shadow: 0 0 0.3em #000000, 0 0 0.3em #000000, 0 0 0.3em #000000, 0 0 0.3em #000000; */
    line-height: 1.2;
    letter-spacing: 0;
    color: var(--color_BLK) !important;
    padding: var(--gap_8px);
    border: solid calc(var(--gap_8px) / 4) var(--color_GRN);
    background-color: #fff;
    /* background: linear-gradient(325deg, var(--color_GRN) 30%, var(--color_YLW) 100%); */
    box-shadow: 0 0 var(--gap_8px) var(--color_BLK);
}
#btn_pagetop2 a + a {
    margin-top: var(--gap_24px);
}
@media screen and (min-width: 1280px) {
	#btm_btn_area {
		display: none;
	}
}
/* @media screen and (max-width: 479px) {
	.btm_btn_area {
        position: relative;
    }
    .side_nav {
        margin-bottom: 0;
        position: fixed;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
		width: 100%;
		box-shadow: 0 0 var(--gap_16px) var(--color_BLK);
		background-color: var(--color_YLW);
		background: linear-gradient(90deg, var(--color_GRN) 0%, var(--color_YLW) 50%, var(--color_GRN) 100%);
    }
	.side_nav > div {
        display: inline-block;
        margin-inline: var(--gap_16px);
    }
} */

@media screen and (min-width: 768px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
	.mob {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.pc {
		display: none;
	}
}

.headder_btn_ticket,
.footer_btn_ticket {
	width: min(90%, 550px);
    margin-inline: auto;
    padding-block: var(--gap_16px);
    position: relative;
    z-index: 500;
}
.footer_btn_ticket {
	padding-block: 0;
}
.headder_btn_ticket a,
.footer_btn_ticket a {
	font-weight: bold;
	text-align: center;
	color: var(--color_BLK);
	padding: var(--gap_16px);
	box-shadow: 0 0 var(--gap_8px) var(--color_GRN),0 0 var(--gap_8px) var(--color_GRN);
	border: solid calc(var(--gap_8px) / 2) var(--color_BLK);
	border-radius: var(--gap_16px);
	background: var(--color_YLW);
    background: linear-gradient(155deg, rgba(255, 242, 84, 1) 0%, rgb(255 255 255) 45%, rgb(255 255 255) 55%, rgba(255, 242, 84, 1) 100%);
    display: block !important;
}
.headder_btn_ticket a b,
.footer_btn_ticket a b {
	font-size: 1.2em;
	color: var(--color_RED);
}
.headder_btn_ticket > i,
.footer_btn_ticket > i {
    font-size: 1.4em;
    text-shadow: 0 0 0.2em #000, 0 0 0.3em #000;
    color: #fff;
    display: inline-block;
    cursor: pointer;
	position: absolute;
    z-index: 999;
}
.headder_btn_ticket > i {
    top: 50%;
    transform: translateY(-50%);
	left: calc(var(--gap_8px) * -1);
}
.footer_btn_ticket > i {
	top: calc(var(--gap_8px) * -1);
	left: calc(var(--gap_8px) * -1);
}
@media screen and (min-width: 1280px) {
	.headder_btn_ticket {
		position: sticky;
		top: 0;
	}
}
@media screen and (max-width: 1279px) {
	.headder_btn_ticket > i {
		display: none;
	}
}
@media screen and (max-width: 599px) {

}

/* =============================================================
    【side_cont】ブロック　
============================================*/
#side_cont {
	width: 250px;
	position: fixed;
	right: var(--gap_32px);
	bottom: var(--gap_64px);
	/* top: 50%;
	transform: translateY(-50%); */
}
#side_cont .navi .flex_item {
	width: 100%;
}
@media screen and (max-width: 1279px) {
	#side_cont .navi {
		display: none;
	}
}

/* =============================================================
    【main_cont】ブロック　
============================================*/
@media screen and (max-width: 599px) {
	#main > .inner_wrap {
		padding-inline: 0;
	}
}

#main_cont {
	width: min(100%,600px);
	margin-inline: auto;
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	overflow-x: hidden;
}

.kv {
	padding: var(--gap_160px) var(--gap_32px);
	background-color: var(--color_lBLU);
	/* background: url(/event/reptiles2026winter/myrep/images/bg_myrep/bg_kv.jpg) center top no-repeat; */
	position: relative;
}
.bg_icon {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.bg_icon > div {
	width: clamp(40px,14vw,95px);
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	position: absolute;
}
.bg_icon > div:nth-child(10n + 1) {
	top: 2%;
}
.bg_icon > div:nth-child(10n + 2) {
	top: 24%;
}
.bg_icon > div:nth-child(10n + 3) {
	top: 46%;
}
.bg_icon > div:nth-child(10n + 4) {
	top: 68%;
}
.bg_icon > div:nth-child(10n + 5) {
	top: 90%;
}
.bg_icon > div:nth-child(10n + 6) {
	top: -10%;
}
.bg_icon > div:nth-child(10n + 7) {
	top: 12%;
}
.bg_icon > div:nth-child(10n + 8) {
	top: 34%;
}
.bg_icon > div:nth-child(10n + 9) {
	top: 56%;
}
.bg_icon > div:nth-child(10n + 10) {
	top: 78%;
}
.bg_icon > div:nth-child(n+1):nth-child(-n+5) {
	left: -2.5%;
}
.bg_icon > div:nth-child(n+6):nth-child(-n+10) {
	left: 20%;
}
.bg_icon > div:nth-child(n+11):nth-child(-n+15) {
	left: 50%;
	margin-left: calc(clamp(40px,14vw,95px) / 2 * -1);
}
.bg_icon > div:nth-child(n+16):nth-child(-n+20) {
	right: 20%;
}
.bg_icon > div:nth-child(n+21):nth-child(-n+25) {
	right: -2.5%;
}
.bg_icon > div:nth-child(2n) {
	animation: bg_icon 3s infinite;
}
.bg_icon > div:nth-child(2n + 1) {
	animation: bg_icon 3s infinite 1.5s;
}
@keyframes bg_icon {
	0% {
		transform: rotate(-4deg);
	}
	50% {
		transform: rotate(4deg);
	}
	100% {
		transform: rotate(-4deg);
	}
}

.kv_logo_wrap {
	font-size: 0em;
	width: min(100%,600px);
	position: relative;
	z-index: 150;
}
.kv_logo {
	padding-top: calc(441 / 600 * 100%);
	background: url(/event/reptiles2026winter/myrep/images/kv_logo.png) center center/contain no-repeat;
}
.logo_wrap {
	width: min(76vw, 1450px);
    bottom: min(7vw, 118px);
    left: min(3vw, 48px);
}

.intro {
	position: relative;
	background: #FFF254;
    background: linear-gradient(155deg, rgba(255, 242, 84, 1) 0%, rgba(62, 188, 202, 1) 45%, rgba(62, 188, 202, 1) 55%, rgba(255, 242, 84, 1) 100%);
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	z-index: 100;
}
.intro_read {
	font-weight: bold;
	text-align: center;
	padding: var(--gap_32px) var(--gap_32px) var(--gap_48px);
	position: relative;
	z-index: 10;
}
.intro_read p {
	text-shadow: 0 0 0.2em #536e89,0 0 0.2em #536e89,0 0 0.3em #536e89;
	line-height: 1.3;
	letter-spacing: 1px;
	color: #fff;
}
.intro_read p b {
	font-size: 1.2em;
	font-weight: inherit;
	color: var(--color_YLW);
	/* background-color: var(--color_YLW); */
}
.intro_read p + p {
	margin-top: var(--gap_8px);
}
/* .intro_read_head_wrap {
	justify-content: center;
	align-items: center;
} */
.intro_read_head {
	font-size: clamp(16px,3.8vw,22px);
	padding-right: var(--gap_24px);
	/* text-align: left; */
	/* width: calc(max-content - min(22vw, 140px)); */
}
.bg_poster {
	position: absolute;
	top: calc(var(--gap_24px) * -1);
	right: var(--gap_32px);
}
.bg_poster .on,
.bg_poster .off {
	/* width: min(22vw, 140px); */
	width: clamp(100px,28vw, 180px);
}
.bg_poster .on {
	position: relative;
	transform: rotate(5deg);
}
.bg_poster .off {
	position: absolute;
}
.bg_poster img {
	filter: drop-shadow(0 0 calc(var(--gap_8px) /2) var(--color_GRN));
}
.bg_poster .on img {
	filter: blur(40px);
	opacity: 0;
	animation: bg_poster 10s infinite;
}
@keyframes bg_poster {
	0%,40% {
		filter: blur(40px);
		opacity: 0;
	}
	60%,100% {
		filter: blur(0px);
		opacity: 1;
	}
}
/* @media screen and (max-width: 374px) {
	.intro_read_head {
		width: 100%;
	}
	.bg_poster {
		margin-top: var(--gap_24px);
	}
	.bg_poster .on,
	.bg_poster .off {
		width: min(35vw, 110px);
	}
	.intro_read_head {
		text-align: center;
	}
} */

/* .kv_pre_wrap {
	padding-block: var(--gap_24px);
	justify-content: center;
	align-items: flex-end;
	background: url(/event/reptiles2026winter/myrep/images/bg_pre.png) center bottom / 100% no-repeat;
}
.kv_pre {
	padding: var(--gap_16px);
}
.kv_pre01 {
	width: clamp(100px, 42%, 313px);
}
.kv_pre02 {
	width: clamp(100px, 58%, 457px);
}
.kv_pre03 {
	width: clamp(100px, 70%, 435px);
	padding-bottom: var(--gap_48px);
} */
/* .kv_pre_wrap_head {
    text-align: left;
	margin-inline: auto;
	margin-bottom: -2px;
	padding-top: var(--gap_32px);
	width: min(90vw, 540px);
}
.kv_pre_wrap_head span {
	font-size: 1.2em;
    color: rgba(255, 255, 255, 0.7);
    padding-left: 16px;
}
.kv_pre_wrap_head span,
.kv_pre_wrap_head span small {
	line-height: 1;
	display: inline-block;
} */
.kv_pre_wrap {
    margin-inline: auto;
	margin-bottom: calc(var(--gap_16px) * -1);
	padding-bottom: var(--gap_80px);
	width: min(90vw, 540px);
	background: url(/event/reptiles2026winter/myrep/images/bg_pre.png) center bottom / 100% no-repeat;
}
.kv_pre_wrap_inner {
	text-align: left;
	padding: var(--gap_24px) var(--gap_32px);
	margin-top: var(--gap_64px);
	background-color: rgba(255, 255, 255, 0.7);
	border-radius: var(--gap_16px);
	position: relative;
}
.kv_pre + .kv_pre {
	margin-top: var(--gap_24px);
}
.kv_pre03,
.kv_pre02 {
	padding-right: min(35vw, 180px);
}
.kv_pre_title {
    font-size: 1.2em;
    line-height: 1.1;
	color: #fff;
    margin-bottom: calc(var(--gap_8px) / 2);
    padding: calc(var(--gap_8px) / 2) var(--gap_8px);
    background-color: red;
    display: inline-block;
}
.kv_pre_read {
	font-size: clamp(16px,3.8vw,22px);
}

/* =============================================================
    【cont_navi】ブロック　
============================================*/
.cont_navi {
	padding-top: var(--gap_160px);
	background-color: var(--color_lBLU);
	position: relative;
	z-index: 200;
}
.cont_navi > .inner_wrap {
	position: relative;
}

.cont_navi .navi.flex {
	justify-content: center;
	column-gap: 4%;
}
.cont_navi .navi .flex_item {
	width: calc(96% / 2);
}

.kv_chara {
	width: min(25vw, 190px);
    position: absolute;
    bottom: 100%;
    left: 5%;
}

.pr_text_wrap {
	transform: rotate(-5deg);
	position: absolute;
	left: 35%;
	bottom: calc(100% + var(--gap_24px));
	z-index: 500;
}
.pr_text {
	font-size: clamp(18px,4.8vw,28px);
	font-weight: bold;
}
.pr_text b {
	color: var(--color_PNK);
}
.pr_text mark {
	color: var(--color_BLU);
	padding-inline: var(--gap_8px);
	max-width: max-content;
	background-color: #fff;
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	display: block;
}
.pr_text mark + mark {
	margin-top: var(--gap_8px);
	margin-left: var(--gap_48px);
}
.pr_text mark:last-of-type {
	margin-left: var(--gap_160px);
}
@media screen and (max-width: 767px) {
	.cont_navi {
		padding-top: calc(var(--gap_160px) * 1.5);
	}
	.kv_chara {
		width: min(32vw, 250px);
	}
	.pr_text_wrap {
		bottom: 125%;
	}
}

/* =============================================================
    【contents】ブロック　
============================================*/
.notice {
	font-size: 0.9em;
	margin-top: var(--gap_16px);
}
.notice p + p {
	margin-top: calc(var(--gap_8px) / 2);
}
.contents {
	padding-bottom: var(--gap_48px);
	position: relative;
	z-index: 150;
}
.contents a {
	color: var(--color_BLK);
	text-decoration: underline !important;
}

.contents.howto {
	background-color: var(--color_lBLU);
}

.navi {
	row-gap: var(--gap_24px);
}
.navi a {
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none !important;
	color: var(--color_YLW);
	padding: var(--gap_16px) var(--gap_16px) var(--gap_16px) var(--gap_32px);
	background-color: var(--color_BLU);
	border: solid calc(var(--gap_8px) / 2) var(--color_YLW);
	border-radius: var(--gap_16px);
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	display: block;
	position: relative;
}
.navi > div:not(.nav_top) a:after {
	font-size: clamp(14px,1.8vw,16px);
	color: #fff;
    content: "\f13a";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands";
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: var(--gap_16px);
    transform: translateY(-50%);
}
.navi a b {
	font-size: clamp(18px,3.8vw,28px);
	margin-bottom: var(--gap_8px);
	display: inline-block;
}
#main_cont .navi a b {
	display: block;
}
.navi a small {
	line-height: 1;
	color: #fff;
	display: inline-block;
}
#main_cont .navi a small {
	display: block;
}
.nav_top a,
.nav_regu a,
.nav_insta a {
	color: var(--color_BLU) !important;
	background-color: #fff;
}
.navi .nav_regu a:after,
.navi .nav_insta a:after {
	color: var(--color_BLU) !important;
}
#main_cont .nav_present {
	width: 80% !important;
}
.nav_present a {
	background-color: var(--color_RED);
}
#main_cont .nav_present a small {
	font-size: clamp(12px, 2vw,16px);
	color: var(--color_YLW);
}
#main_cont .nav_present a {
	font-size: clamp(20px,4.8vw,28px);
	padding: var(--gap_24px);
}
.nav_top a,
.nav_present a,
.nav_regu a {
	color: #fff;
}

.box01 {
	padding: var(--gap_64px) var(--gap_32px) var(--gap_64px);
	background-color: #fff;
	border-radius: var(--gap_16px);
	box-shadow: 0 0 var(--gap_16px) var(--color_GRN);
	position: relative;
}
.box01::after {
	content: "";
	width: calc(100% - var(--gap_24px));
	height: calc(100% - var(--gap_24px));
	border: solid calc(var(--gap_8px) / 2) var(--color_BLU);
	border-radius: var(--gap_8px);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
@media screen and (max-width: 767px) {
	.box01 {
		margin-top: var(--gap_48px);
	}
}

.sec_wrap {
	padding-top: var(--gap_48px);
}
.sec_title_wrap {
	font-size: 0em;
	margin-inline: auto;
}
.box01 .sec_title_wrap {
	position: absolute;
	top: max(-3.8vw,-16px);
	left: 50%;
	transform: translateX(-50%);
	z-index: 100;
}
.box01 .sec_read {
	position: relative;
	z-index: 1500;
}

.disc,
.decimal  {
	padding-left: 1.5em;
}
.disc li {
	list-style: disc;
}
.decimal li {
	list-style: decimal;
}
.sample {
	text-align: center;
	padding-block: var(--gap_24px) var(--gap_16px);
}
.sample .img_thumb {
	margin-top: var(--gap_8px);
}
.sample.poster {
	padding-bottom: 0;
}
.sample.poster > p:not(:last-child) {
	margin-bottom: var(--gap_24px);
}
.sample.poster .img_thumb {
	width: min(50%, 240px);
	margin-bottom: var(--gap_24px);
}

.entry .sec_title_wrap {
	width: clamp(80px,15vw,127px);
}
.entry .sec_title {
	background: url(/event/reptiles2026winter/myrep/images/title_entry.png) center center/contain no-repeat;
	padding-top: calc(44 / 127 * 100%);
}
.entry .sec_read .head {
	text-align: center;
}
.entry .sec_read .head mark {
	font-size: var(--fontM);
	font-weight: bold;
	background: linear-gradient(180deg, transparent 0%, transparent 80%, var(--color_YLW) 80%, var(--color_YLW) 100%);
	display: inline-block;
}
.entry .sec_read .head mark b {
	color: var(--color_BLU);
}
.entry .sec_read .head > p {
	margin-top: var(--gap_16px);
}
.entry .sec_read .head > small {
	margin-top: calc(var(--gap_8px) / 2);
	display: block;
}
.entry .note_title {
	text-align: center;
	padding-block: var(--gap_24px) var(--gap_8px);
}
.entry .note_read {
	font-weight: bold;
	padding: var(--gap_16px);
	border: solid 1px;
}
.entry .note_read b {
	color: var(--color_BLU);
}
.entry .note_read small {
	font-weight: normal;
	color: var(--color_RED);
}
.entry .note_read li + li {
	margin-top: calc(var(--gap_8px) / 2);
}
.entry .note_read p {
	font-weight: normal;
	text-align: center;
	margin-top: var(--gap_24px);
}
.arw {
	font-size: var(--fontM);
	color: var(--color_BLU);
	animation: anime_arw 1s steps(1) infinite;
}
@keyframes anime_arw {
	0%,100% {
		transform: translateY(calc(var(--gap_8px) / -2));
	}
	50% {
		transform: translateY(calc(var(--gap_8px) / 2));
	}
}

.vote .sec_title_wrap {
	width: clamp(112px,21vw,178px);
}
.vote .sec_title {
	background: url(/event/reptiles2026winter/myrep/images/title_vote.png) center center/contain no-repeat;
	padding-top: calc(44 / 178 * 100%);
}
.sec_vote_head {
	font-size: var(--fontM);
    font-weight: bold;
	text-align: center;
	margin-bottom: var(--gap_32px);
}
.sec_vote_head mark {
	background: linear-gradient(180deg, transparent 0%, transparent 80%, var(--color_YLW) 80%, var(--color_YLW) 100%);
    display: inline-block;
}
.sec_vote_head b {
	color: var(--color_BLU);
}
.vote .sec_read + .sec_read {
	margin-top: var(--gap_32px);
}
.vote .sec_read .head {
	font-size: var(--fontM);
	font-weight: bold;
	line-height: 1.1;
	color: #fff;
	padding: var(--gap_8px) var(--gap_16px);
	margin-left: calc(var(--gap_24px) * -1);
	margin-bottom: var(--gap_24px);
	background-color: var(--color_BLU);
	border-radius: 0 var(--gap_16px) var(--gap_16px) 0;
	display: inline-block;
}
.vote .note_read li + li {
	margin-top: var(--gap_16px);
}
.vote_limit {
	text-align: center;
	margin-top: var(--gap_24px);
}
.vote_limit p {
	font-size: var(--fontS);
	font-weight: bold;
	text-align: center;
}

.insta_list {
	margin-top: var(--gap_32px);
	padding: var(--gap_8px);
    box-shadow: 0 0 var(--gap_8px) #ddd;
}
.btn_search {
	margin-bottom: var(--gap_48px);
}
.btn_search a {
	font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none !important;
    color: var(--color_BLK);
	max-width: max-content;
    margin-inline: auto;
    margin-block: var(--gap_32px) calc(var(--gap_8px) / 2);
    padding: var(--gap_16px) var(--gap_16px) var(--gap_16px) var(--gap_32px);
    background-color: #fff;
    border: solid calc(var(--gap_8px) / 2) var(--color_BLU);
    border-radius: var(--gap_16px);
    box-shadow: 0 0 var(--gap_8px) var(--color_BLU);
    display: block;
}
.btn_search a i:last-of-type {
	font-size: 0.8em;
}

.contents.present {
	position: relative;
	background: url(/event/reptiles2026winter/myrep/images/bg_pre_title.png) center top calc(var(--gap_64px) * -1)/100% no-repeat var(--color_ORG);
}
.contents.present::before {
	margin-top: -1px;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: var(--color_lBLU);
	height: var(--gap_64px);
	width: 100%;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	z-index: -1;
}
.present .sec_title_wrap {
	width: clamp(100px,90vw,517px);
	margin-bottom: var(--gap_48px);
}
.present .sec_title {
	background: url(/event/reptiles2026winter/myrep/images/title_present.png) center center/contain no-repeat;
	padding-top: calc(138 / 517 * 100%);
}
.present .sec_read {
	text-align: center;
}
.present .sec_read + .sec_read {
	margin-top: var(--gap_48px);
}
.present .sec_read .head {
	font-size: var(--fontM);
	font-weight: bold;
	text-align: center;
	width: min(90%,400px);
	margin-inline: auto;
	padding: var(--gap_16px) var(--gap_16px);
	border-radius: 50px;
	background-color: #fff;
}
.present .sec_read .head b {
	color: var(--color_RED);
}
.present .sec_read .head small {
	font-size: var(--fontS);
	display: block;
}
/* .present_sample.img_thumb {
	margin-top: var(--gap_32px);
	width: min(70%, 280px);
}
.present02 .present_sample.img_thumb {
	width: min(70%, 198px);
} */
.present_wrap {
	padding-top: var(--gap_24px);
	margin-bottom: calc(var(--gap_16px) * -1);
	background: url(/event/reptiles2026winter/myrep/images/bg_pre.png) center bottom/100% no-repeat;
}
.pre_img {
	margin-inline: auto;
	padding-bottom: clamp(16px, 10vw, 64px);
}

.pre01 {
	width: clamp(100px,48vw,314px);
}
.pre02 {
	width: clamp(100px,60vw,457px);
}
.pre03 {
	width: clamp(100px,60vw,435px);
}
.present03 > p {
	font-size: var(--fontL);
	font-weight: bold;
	text-shadow: 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.2em #fff, 0 0 0.3em #fff, 0 0 0.3em #fff;
}
.present03 > p small {
	font-size: var(--fontS);
	position: relative;
    z-index: -1;
}

.contents.faq {
	background-color: var(--color_lBLU);
}

.faq .sec_title_wrap {
	width: clamp(50px,13vw,76px);
}
.faq .sec_title {
	background: url(/event/reptiles2026winter/myrep/images/title_q&a.png) center center/contain no-repeat;
	padding-top: calc(39 / 76 * 100%);
}

.faq_cate {
	font-size: 0.9em;
	font-weight: bold;
	color: var(--color_BLU);
}
.faq_item {
	margin-top: var(--gap_8px);
}
.faq_item + .faq_cate {
	margin-top: var(--gap_16px);
}
.faq_item:has(+ .faq_cate) {
	padding-bottom: var(--gap_8px);
    border-bottom: solid 1px var(--color_lBLU);
}
.faq_item + .faq_item {
    padding-top: var(--gap_8px);
    border-top: solid 1px var(--color_lBLU);
}

.que {
	font-size: 1em;
	line-height: 1.2;
    text-align: left;
	color: var(--color_BLK);
    width: 100%;
    padding: var(--gap_8px) 0 var(--gap_8px) !important;
	padding-right: 1.5em !important;
    border: none;
	background-color: unset;
    position: relative;
    transition: all 0.3s;
}
.que.is-opend,
.que:hover {
    background-color: #e9f8ff;
}
.que::before {
    content: "Q.";
    font-size: 1.1em;
    margin-right: var(--gap_8px);
    position: relative;
}
.que::after {
	color: var(--color_BLU);
    content: "\2b";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands";
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.que.is-opend::after {
    content: "\f068";
}
.ans_wrap {
    text-align: justify;
    margin-top: var(--gap_8px);
}

.contents.outline {
	padding-block: var(--gap_32px);
	background-color: #fff;
}

.outline_title {
	font-weight: bold;
	text-align: center;
    width: 100%;
	margin-bottom: var(--gap_16px);
    padding: var(--gap_16px) var(--gap_16px) !important;
	border-top: solid 1px;
	border-bottom: solid 1px;
}
#regulations dl + dl {
	margin-top: var(--gap_16px);
}
#regulations dt {
	font-size: 0.9em;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: calc(var(--gap_8px) / 2);
}
#regulations dt i {
	font-size: 0.8em;
	margin-right: calc(var(--gap_8px) / 2);
}
#regulations dd {
	font-size: 0.9em;
	line-height: 1.4;
}

.contents.contact {
	color: #fff;
	padding: var(--gap_32px) var(--gap_24px);
	background-color: var(--color_PNK);
}
.contact_title_wrap {
	text-align: center;
}
.contact_title {
	font-size: var(--fontS);
	font-weight: bold;
}
.contact_wrap {
	line-height: 1.4;
	margin-top: var(--gap_16px);
	padding: var(--gap_16px);
	border: solid 1px;
}
.contact_wrap_inner {
	max-width: max-content;
	margin-inline: auto;
}
.contact_wrap_inner a {
	color: #fff;
}
.contact_head {
	font-weight: bold;
	text-align: center;
	margin-bottom: var(--gap_16px);
}
.contact_head small {
	font-weight: normal;
	display: block;
}
.bnr_rep2026winter {
	width: min(90%, 450px);
    margin: var(--gap_32px) auto 0;
	box-shadow: 0 0 var(--gap_16px) #bd437a;
    display: block;
}

/* =============================================================
    【movie】ブロック　※Brightecoveの動画表示
============================================*/
.movie_wrap {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	border: 3px solid var(--color_BLK);
	padding: 0.8em;
}
#movie {
	position: relative;
	width: 100%;
	padding-top: calc(9 / 16 * 100%);
	margin: 0 auto;
	overflow: hidden;
}
.tvo-video {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
}
#cm_movie {
	margin-top: var(--gap_24px);
	/* margin-bottom: calc(var(--gap_48px) * -1); */
}
.cm_movie_inner .movie_wrap {
	width: 48%;
	padding: 0;
	margin: 0 auto var(--gap_48px);
	border: solid 2px var(--color_BLK);
    box-shadow: 0 0 var(--gap_16px) #bbb500;
}
/* @media screen and (max-width: 1919px) {
	#cm_movie {
		margin-top: var(--gap_80px);
	}
} */
@media screen and (max-width: 999px) {
	.cm_movie_inner .movie_wrap {
		width: 100%;
		max-width: 768px;
		margin: 0 auto var(--gap_48px);
	}
}

/*================================
アニメーション
================================*/
.fuwafuwa {
	animation: fuwafuwa 2s infinite 0s;
}
.fuwafuwa2 {
	animation: fuwafuwa 2s infinite 1s;
}
@keyframes fuwafuwa {
	0% {
	transform: translateY(var(--gap_8px));
   }
	50% {
	transform: translateY(calc(var(--gap_8px) * -1));
   }
	100% {
	transform: translateY(var(--gap_8px));
   }
}
 
.poyopoyo1 {
	animation: poyopoyo 6s ease-out infinite;
	opacity: 1;
}
.poyopoyo2 {
	animation: poyopoyo 6s ease-out infinite 3s;
	opacity: 1;
}
@keyframes poyopoyo {
	0%, 10%, 15%, 20% {
	  transform: scale(1.0);
	}
	12.5%, 17.5% {
	  transform: scale(0.95);
	}
}

/* 画像の表示アニメーション*/
.slidein {
    opacity: 0;
    transform: translate(0,0);
    transition: all 1.0s;
  &.slidein-left{
      transform: translate(-100%,0);
  }
  &.slidein-right{
      transform: translate(100%,0);
  }
  &.slidein-up{
      transform: translate(0,-100%);
  }
  &.slidein-bottom{
      transform: translate(0,100%);
  }
  &.scrollin{
    transform: translate(0, 0)!important;
    opacity: 1!important;
  }
}




/* JS 時間指定で表示非表示を制御用 */
.js-time_limited {
    display: none;
}
.js-time_limited_fire {
    display: block;
}
/* END // JS 時間指定で表示非表示を制御用 */

#tvoHeader,
#tvoFooter {
	position: relative;
	z-index: 1100;
}

