@charset "UTF-8";
/******************************* Preface ***************************************/
a:hover { color: #ffe100; }

/********************************* body ***************************************/
/********************************* body ***************************************/
body { background: url("../img/main_bg.jpg") repeat-y; background-size: 100%; /******************************** header **************************************/ /********************************  Main Content ******************************/ /***********************************  footer ********************************/ }

body header { position: relative; z-index: 999; }

body header.scrolled { background-color: rgba(0, 0, 0, 0.7); transition: all linear .2s; }

body header.header-01 { position: fixed; width: 100%; top: 0; }

body header.header-01 .inner { position: relative; max-width: 1120px; margin: 0 auto; padding: 1.5rem 1rem; }

body header.header-01 .inner .f-warp { display: flex; align-items: center; justify-content: space-between; padding-right: 4.8rem; }

body header.header-01 .inner .logo { width: 390px; }

body header.header-01 .inner .logo a { display: block; }

body header.header-01 .inner .logo a .cls-1 { transition: fill 0.3s ease; }

body header.header-01 .inner .logo a:hover .cls-1 { fill: #ffe100 !important; }

body header.header-01 .inner .funa2_lang { display: flex; }

body header.header-01 .inner .funa2_lang > button { background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; font-size: .9rem; border-right: solid 1px #fff; padding-right: 1rem; margin-right: 1rem; color: #fff; line-height: 1.1; }

body header.header-01 .inner .funa2_lang > button:last-child { border-right: 0; padding-right: 0; margin-right: 0; }

body header.header-01 .inner .funa2_lang > button.active { color: #ffe100; }

body header.header-01 .inner .funa2_lang > button:hover { color: #ffe100; }

body header.header-01 .inner .menu-wrapper .gnav { position: fixed; top: 0; right: -100%; bottom: 0; width: 100%; padding: 10rem 0; background: rgba(0, 0, 0, 0.9); overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; transition: all .5s; opacity: 0; z-index: -1; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container { max-width: 1120px; margin: 0 auto; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container .menu { display: flex; flex-wrap: wrap; justify-content: center; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container .menu li { width: 45%; text-align: center; padding: 0 1rem 1.8rem 1rem; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container .menu li a { position: relative; display: block; padding: 1rem 2rem; font-size: 1.2rem; font-weight: bold; color: #fff; transition: all .3s; background: #353535; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container .menu li a:hover { background: #ffe100; color: #000; }

body header.header-01 .inner .menu-wrapper .gnav .menu-container .menu li a::before { content: ''; display: block; position: absolute; top: 50%; left: 1em; transform: translateY(-50%); width: 15px; height: 15px; background-image: url(../img/arrow.svg); background-repeat: no-repeat; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns { display: flex; justify-content: center; color: #fff; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li { margin: 1rem 1rem; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li.insta { width: 50px; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li.x { width: 55px; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li.facebook { width: 32px; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li a svg { width: 100%; fill: #fff; transition: fill 0.3s ease; }

body header.header-01 .inner .menu-wrapper .gnav .gnav_sns li a:hover svg { fill: #ffe100; }

body header.header-01 .inner .menu-wrapper .toggle-btn { position: absolute; top: 50%; right: 1rem; width: 45px; height: 35px; transition: all .5s; cursor: pointer; z-index: 999; transform: translateY(-50%); }

body header.header-01 .inner .menu-wrapper .toggle-btn:hover span { background-color: #ffe100; }

body header.header-01 .inner .menu-wrapper .toggle-btn span { display: block; position: absolute; left: 0; width: 45px; height: 3px; border-radius: 3px; background-color: #fff; transition: all .5s; }

body header.header-01 .inner .menu-wrapper .toggle-btn span:nth-child(1) { top: 0px; }

body header.header-01 .inner .menu-wrapper .toggle-btn span:nth-child(2) { top: 16px; }

body header.header-01 .inner .menu-wrapper .toggle-btn span:nth-child(3) { bottom: 0; }

body header.header-01 .inner .menu-wrapper .toggle-btn span.scrolled { background-color: black; }

body header.header-01 .inner .menu-wrapper.menu-open .gnav { top: 0; right: 0; opacity: 1; }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn { margin-top: 0; }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn:hover span { background-color: #ffe100; }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn span { background-color: #fff; }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(1) { -webkit-transform: translateY(15px) rotate(-315deg); transform: translateY(15px) rotate(-315deg); }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(2) { display: none; }

body header.header-01 .inner .menu-wrapper.menu-open .toggle-btn span:nth-child(3) { -webkit-transform: translateY(-17px) rotate(315deg); transform: translateY(-17px) rotate(315deg); }

body .lg_swich_sp { display: none; }

body .mainvi { width: 100%; margin: 0 auto; position: relative; aspect-ratio: 16 / 9; }

body .movie { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

body .movie iframe { width: 100%; height: 100%; border: none; pointer-events: none; /* 必要に応じて外してOK */ }

body #youtube-area { position: relative; width: 100%; margin: 0 auto; position: relative; aspect-ratio: 16 / 9; }

body #youtube-area #youtube { width: 100%; margin: 0 auto; position: relative; aspect-ratio: 16 / 9; }

body #youtube-area .loader { position: absolute; top: 35%; left: 45%; width: 150px; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(farthest-side, #ffe100 94%, #0000) top/8px 8px no-repeat, conic-gradient(#0000 30%, #ffa516); -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 8px), #000 0); animation: l13 1s infinite linear; }

@keyframes l13 { 100% { transform: rotate(1turn); } }

body .breadcrumb-wrap ul { width: 100%; max-width: 1120px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; padding: 1em 0; }

body .breadcrumb-wrap ul li { font-size: .9rem; font-weight: 500; }

body .breadcrumb-wrap ul li::after { padding: 0 1em; content: '>'; color: black; }

body .breadcrumb-wrap ul li:last-child::after { content: ''; }

body .breadcrumb-wrap ul li a { text-decoration: none; color: #ffe100; }

@media screen and (min-width: 678px) and (max-width: 1120px) { body .breadcrumb-wrap { padding: 0 1.5rem; } }

body main .border-d { max-width: 1120px; margin: 0 auto; background: url("../img/border-d.png") repeat-x; padding: .2rem 0; }

body .content-wrap { padding: 4rem 0; /* ドットの数字を非表示にする */ /* ドットを円形に設定 */ /* ドットをアクティブ状態にした時のスタイル */ }

body .content-wrap .inner.inner-l { width: 100%; max-width: 1120px; margin: 0 auto; }

body .content-wrap .inner.inner-m { width: 100%; max-width: 1000px; margin: 0 auto; }

body .content-wrap .inner.inner-s { width: 100%; max-width: 730px; margin: 0 auto; }

@media screen and (min-width: 678px) and (max-width: 1120px) { body .content-wrap .inner.inner-s { padding: 0 1.5rem; }
		body .content-wrap .inner.inner-m { padding: 0 1.5rem; }
		body .content-wrap .inner.inner-l { padding: 0 1.5rem; } }

body .content-wrap h1.page-title, body .content-wrap h2.page-title, body .content-wrap h3.page-title, body .content-wrap h4.page-title, body .content-wrap h5.page-title, body .content-wrap h6.page-title { font-size: 2.8rem; font-weight: bold; margin-bottom: 2.5rem; }

body .content-wrap h1.section-title, body .content-wrap h2.section-title, body .content-wrap h3.section-title, body .content-wrap h4.section-title, body .content-wrap h5.section-title, body .content-wrap h6.section-title { font-size: 2.8rem; font-weight: bold; margin-bottom: 2.5rem; }

body .content-wrap h1.content-title, body .content-wrap h2.content-title, body .content-wrap h3.content-title, body .content-wrap h4.content-title, body .content-wrap h5.content-title, body .content-wrap h6.content-title { font-size: 2rem; font-weight: bold; margin-bottom: 2.5rem; }

body .content-wrap h1.event-title, body .content-wrap h2.event-title, body .content-wrap h3.event-title, body .content-wrap h4.event-title, body .content-wrap h5.event-title, body .content-wrap h6.event-title { font-size: 1.8rem; font-weight: bold; margin-bottom: 2.5rem; }

body .content-wrap h1.onther-title, body .content-wrap h2.onther-title, body .content-wrap h3.onther-title, body .content-wrap h4.onther-title, body .content-wrap h5.onther-title, body .content-wrap h6.onther-title { font-size: 1.8rem; font-weight: bold; margin-bottom: 2.5rem; }

body .content-wrap.content-wrap-intro .box-3col { display: flex; flex-wrap: wrap; justify-content: center; }

body .content-wrap.content-wrap-intro .box-3col li { width: 31.3%; margin-right: 3%; margin-bottom: 4%; }

body .content-wrap.content-wrap-intro .box-3col li:nth-child(3n) { margin-right: 0; }

body .content-wrap.content-wrap-intro .box-3col li a { display: block; }

body .content-wrap.content-wrap-intro .intro_txt { font-size: 1.3rem; font-weight: bold; }

body .content-wrap.content-wrap-intro .intro_txt02 { font-size: .85rem; margin-bottom: 2rem; }

body .content-wrap.content-wrap-advertise a { transition: .3s; }

body .content-wrap.content-wrap-advertise a:hover { opacity: .6; }

body .content-wrap.content-wrap-topabout .link-btn { margin-top: 3rem; }

body .content-wrap.content-wrap-movie .movie-3col { display: flex; flex-wrap: wrap; justify-content: center; }

body .content-wrap.content-wrap-movie .movie-3col li { width: 32%; margin-right: 2%; margin-bottom: 4%; }

body .content-wrap.content-wrap-movie .movie-3col li:nth-child(3n) { margin-right: 0; }

body .content-wrap.content-wrap-movie .movie-3col li .movie-item { position: relative; width: 100%; padding-top: 56.25%; /* 16:9比率 (315/560 ≒ 0.5625) */ height: 0; overflow: hidden; }

body .content-wrap.content-wrap-movie .movie-3col li .movie-item iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

body .content-wrap.content-wrap-movie .movie-3col li a { display: block; transition: .3s; }

body .content-wrap.content-wrap-movie .movie-3col li a:hover { opacity: .7; }

body .content-wrap.content-wrap-insta .link-btn { margin-top: 2rem; }

body .content-wrap.content-wrap-insta .box-3col { display: flex; flex-wrap: wrap; justify-content: center; }

body .content-wrap.content-wrap-insta .box-3col li { width: 32%; margin-right: 2%; margin-bottom: 2%; }

body .content-wrap.content-wrap-insta .box-3col li:nth-child(3n) { margin-right: 0; }

body .content-wrap.content-wrap-insta .box-3col li a { display: block; transition: .3s; }

body .content-wrap.content-wrap-insta .box-3col li a:hover { opacity: .7; }

body .content-wrap.content-wrap-insta .insta_txt { margin-top: 1rem; }

body .content-wrap.content-wrap-event .box-3col { display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch; }

body .content-wrap.content-wrap-event .box-3col li { max-width: 150px; width: 13.4%; margin-right: 1%; margin-bottom: 2%; }

body .content-wrap.content-wrap-event .box-3col li:nth-child(7n) { margin-right: 0; }

body .content-wrap.content-wrap-event .box-3col li a { display: block; color: #fff; transition: .3s; font-size: .6rem; font-weight: 500; }

body .content-wrap.content-wrap-event .box-3col li a .event_name { position: relative; padding: .2rem 1.5rem .2rem .5rem; background: #000; }

body .content-wrap.content-wrap-event .box-3col li a .event_name svg { position: absolute; top: 50%; right: .3rem; transform: translateY(-50%); font-size: bold; }

body .content-wrap.content-wrap-event .box-3col li a:hover { color: #000; }

body .content-wrap.content-wrap-event .box-3col li a:hover .event_name { background: #ffe100; }

body .content-wrap.content-wrap-contact .link-btn { margin-top: 2rem; }

body .content-wrap.content-wrap-flink .box-2col { display: flex; flex-wrap: wrap; justify-content: center; }

body .content-wrap.content-wrap-flink .box-2col li { max-width: 540px; width: 48.5%; margin-right: 2%; margin-bottom: 2%; }

body .content-wrap.content-wrap-flink .box-2col li:nth-child(2n) { margin-right: 0; }

body .content-wrap.content-wrap-flink .box-2col li a { display: block; transition: .3s; }

body .content-wrap.content-wrap-flink .box-2col li a:hover { opacity: .6; }

body .content-wrap.content-wrap-history .box-3col { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 1rem; }

body .content-wrap.content-wrap-history .box-3col li { width: 32%; margin-right: 2%; margin-bottom: 2%; }

body .content-wrap.content-wrap-history .box-3col li img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; /* 必要に応じて画像のはみ出し対処 */ }

body .content-wrap.content-wrap-history .box-3col li:nth-child(3n) { margin-right: 0; }

body .content-wrap.content-wrap-history .his_txt { max-width: 1000px; margin: 0 auto; margin-bottom: 4rem; }

body .content-wrap.content-wrap-history .his_txt a { color: #ffe100; }

body .content-wrap.content-wrap-history .his_txt a:hover { text-decoration: underline; }

body .content-wrap.content-wrap-history .movie-item { position: relative; width: 100%; padding-top: 56.25%; /* 16:9比率 (315/560 ≒ 0.5625) */ height: 0; overflow: hidden; }

body .content-wrap.content-wrap-history .movie-item iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

body .content-wrap.content-wrap-msg .msg { overflow: hidden; padding: 0 1.5rem; }

body .content-wrap.content-wrap-msg .msg .float { float: right; width: 46%; margin-left: 2.5rem; margin-bottom: 1rem; font-size: .85rem; }

body .content-wrap.content-wrap-msg .msg .float .msg_name { font-size: 1.2rem; font-weight: 600; }

body .content-wrap.content-wrap-msg .msg .float > div { margin-top: .5rem; }

body .content-wrap.content-wrap-event-bk .event_intro { display: flex; margin-bottom: 2.5rem; }

body .content-wrap.content-wrap-event-bk .event_intro .thm { width: 30%; }

body .content-wrap.content-wrap-event-bk .event_intro .txt { width: 70%; padding-left: 2rem; }

body .content-wrap.content-wrap-event-bk .box-3col { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 1rem; }

body .content-wrap.content-wrap-event-bk .box-3col li { width: 32%; margin-right: 2%; margin-bottom: 2%; }

body .content-wrap.content-wrap-event-bk .box-3col li img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; /* 必要に応じて画像のはみ出し対処 */ }

body .content-wrap.content-wrap-event-bk .box-3col li:nth-child(3n) { margin-right: 0; }

body .content-wrap.content-wrap-event-bk .link-btn { margin-top: 2rem; }

body .content-wrap .thumb-slider-02 { height: 100%; margin-bottom: 2rem; }

body .content-wrap .thumb-slider-02 img { display: block; width: 100%; object-fit: cover; }

body .content-wrap .thumb-slider-02 .arrow { position: absolute; top: 50%; display: block; width: 60px; height: 60px; cursor: pointer; z-index: 2; }

body .content-wrap .thumb-slider-02 .arrow.prev { left: -3%; transform: translateX(-50%); transform: translateY(-50%); }

body .content-wrap .thumb-slider-02 .arrow.next { right: -3%; transform: translateX(50%); transform: translateY(-50%); }

body .content-wrap .thumb-slider .slick-dots li button { font-size: 0; /* 数字を見えなくする */ }

body .content-wrap .thumb-slider .slick-dots li button:before { content: ""; display: block; width: 8px; height: 8px; background-color: #D9D9D9; border-radius: 50%; opacity: 0.5; transition: opacity 0.3s; }

body .content-wrap .thumb-slider .slick-dots li.slick-active button:before { opacity: 1; background-color: rgba(255, 225, 0, 0.5); /* アクティブ時のドット色 */ }

body .content-wrap .link-btn { text-align: center; }

body .content-wrap .link-btn a { padding: .2rem 4rem; display: inline-block; transition: .3s; }

body .content-wrap .link-btn.main-color a { border: 1px solid #fff; color: #fff; }

body .content-wrap .link-btn.main-color a:hover { background-color: #ffe100; color: #000; }

body .content-wrap .link-btn.reverse-color a { background-color: #FEC400; border: 1px solid #FEC400; color: #ffffff; }

body .content-wrap .link-btn.reverse-color a::after { background: #ffe100 !important; }

body .content-wrap .link-btn.reverse-color a:hover { background-color: #ffe100; }

body .content-wrap .mw_wp_form form, body .content-wrap .form { padding: 0 1.5rem; }

body .content-wrap .mw_wp_form form .row, body .content-wrap .form .row { margin: 0; }

body .content-wrap .mw_wp_form form .row .col-12, body .content-wrap .form .row .col-12 { padding: 1rem .5rem; color: #fff; }

body .content-wrap .mw_wp_form form .row .col-12 label, body .content-wrap .form .row .col-12 label { width: 100%; font-size: 1rem; color: #fff; }

body .content-wrap .mw_wp_form form .row .col-12 select, body .content-wrap .mw_wp_form form .row .col-12 input, body .content-wrap .mw_wp_form form .row .col-12 textarea, body .content-wrap .form .row .col-12 select, body .content-wrap .form .row .col-12 input, body .content-wrap .form .row .col-12 textarea { width: 100%; background-color: white; border: 1px solid #f3f3f3; padding: 1rem; border-radius: 0.25rem; font-size: 16px; background: #F8F9F9; }

body .content-wrap .mw_wp_form form .row .col-12 select:hover, body .content-wrap .mw_wp_form form .row .col-12 select:focus, body .content-wrap .mw_wp_form form .row .col-12 select:active, body .content-wrap .mw_wp_form form .row .col-12 input:hover, body .content-wrap .mw_wp_form form .row .col-12 input:focus, body .content-wrap .mw_wp_form form .row .col-12 input:active, body .content-wrap .mw_wp_form form .row .col-12 textarea:hover, body .content-wrap .mw_wp_form form .row .col-12 textarea:focus, body .content-wrap .mw_wp_form form .row .col-12 textarea:active, body .content-wrap .form .row .col-12 select:hover, body .content-wrap .form .row .col-12 select:focus, body .content-wrap .form .row .col-12 select:active, body .content-wrap .form .row .col-12 input:hover, body .content-wrap .form .row .col-12 input:focus, body .content-wrap .form .row .col-12 input:active, body .content-wrap .form .row .col-12 textarea:hover, body .content-wrap .form .row .col-12 textarea:focus, body .content-wrap .form .row .col-12 textarea:active { outline: 2px solid #707070; border-color: transparent !important; box-shadow: none !important; }

body .content-wrap .mw_wp_form form .row .col-12 .form-control, body .content-wrap .form .row .col-12 .form-control { padding: 1.3rem 1rem; }

body .content-wrap .mw_wp_form form .btn-wrap, body .content-wrap .form .btn-wrap { text-align: center; }

body .content-wrap .mw_wp_form form .btn-wrap input[type=submit], body .content-wrap .form .btn-wrap input[type=submit] { background-color: #ffe100; color: #000; font-weight: bold; width: 350px; padding: 1rem 2rem; border-radius: 8px; border: solid 1px #ffe100; outline: none; }

body .content-wrap .mw_wp_form form .btn-wrap input[type=submit]:hover, body .content-wrap .form .btn-wrap input[type=submit]:hover { border: solid 1px #000; background-color: #000; color: #FFF; }

body .content-wrap .mw_wp_form form .checkbox-consent, body .content-wrap .form .checkbox-consent { text-align: center; color: #fff; }

body .content-wrap .mw_wp_form form .checkbox-consent a, body .content-wrap .form .checkbox-consent a { text-decoration: underline; }

body .scroll-wrap { height: 300px; overflow: auto; border: 1px solid #D6D6D6; padding: 1.5rem; background: white; font-size: .85rem; }

body .scroll-wrap h5 { padding-bottom: 1rem; margin-bottom: 0; font-size: 1rem; font-weight: 500; }

body .scroll-wrap p { padding-bottom: 1rem; line-height: 1.8; }

body footer.footer .copyright { font-size: .95rem; background: #000; padding: 1rem; color: #ffffff; }

/*==================================================
anime
==================================================*/
/* fadeUp */
.fadeIn { animation-name: fadeInAnime; animation-duration: 1.2s; animation-fill-mode: forwards; opacity: 0; }

.fadeUp { animation-name: fadeUpAnime; animation-duration: 1.2s; animation-fill-mode: forwards; opacity: 0; }

.fadeLeft { animation-name: fadeLeftAnime; animation-duration: 0.8s; animation-fill-mode: forwards; opacity: 0; }

.fadeRight { animation-name: fadeRightAnime; animation-duration: 0.8s; animation-fill-mode: forwards; opacity: 0; }

@keyframes fadeInAnime { from { opacity: 0; }
		to { opacity: 1; } }

@keyframes fadeUpAnime { from { opacity: 0;
				transform: translateY(70px); }
		to { opacity: 1;
				transform: translateY(0); } }

@keyframes fadeLeftAnime { from { opacity: 0;
				transform: translateX(100px); }
		to { opacity: 1;
				transform: translateX(0); } }

@keyframes fadeRightAnime { from { opacity: 0;
				transform: translateX(-100px); }
		to { opacity: 1;
				transform: translateX(0); } }

@keyframes bounce { 0%, 100% { transform: translateY(0);
				/* 元の位置 */ }
		50% { transform: translateY(-10px);
				/* 上に移動 */ } }

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger, .fadeLeftTrigger, .fadeRightTrigger, .fadeTrigger { opacity: 0; }

.sb_instagram_header, #sbi_load { display: none; }

.content-title-feed .main { display: flex; justify-content: center; align-items: center; font-family: "Comfortaa", serif; font-size: 2.5rem; font-weight: bold; text-align: center; color: #62A962; }

.content-title-feed .main img { width: 5%; margin-right: 1rem; }

.link-btn-feed { width: 50% !important; }

/* モーダル */
.modal { display: none; /* 初期は非表示 */ position: fixed; z-index: 9999; left: 0; top: 0; width: 100vw; height: 100vh; overflow: auto; background-color: rgba(0, 0, 0, 0.85); /* 半透明の黒背景 */ animation: fadeIn 0.3s ease-in-out; }

/* フェードインアニメーション */
@keyframes fadeIn { from { opacity: 0; }
		to { opacity: 1; } }

/* 閉じるボタン */
.modal .modalclose { position: absolute; top: 2%; right: 2%; color: #fff; font-size: 1.5rem; width: 45px; height: 45px; font-weight: bold; cursor: pointer; transition: 0.3s; z-index: 999; color: #000; background: #ffe100; line-height: 1.1; border-radius: 999px; display: flex; justify-content: center; align-items: center; }

/* モーダル内の画像 */
.modal-funa2 { position: absolute; top: 50%; left: 50%; width: 90%; max-width: 800px; transform: translate(-50%, -50%); }

.modal-funa2-inr { position: relative; }

/*========= ページトップのためのCSS ===============*/
#page-top { display: none; /* 初期状態では非表示 */ position: fixed; bottom: 50px; right: 50px; /* ここにボタンのスタイルを追加 */ transition: opacity 0.5s ease-in-out; /* フェードイン/フェードアウトのエフェクト */ }

/*リンクの形状*/
#page-top a { display: flex; justify-content: center; align-items: center; background-color: #ffe100; border-radius: 100rem; width: 65px; height: 65px; text-transform: uppercase; text-decoration: none; font-size: 1.6rem; line-height: 2; transition: all 0.3s; font-weight: bold; padding-bottom: .4rem; }

#page-top a:hover { background: #000; }

/*リンクを右下に固定*/
#page-top { position: fixed; right: 40px; bottom: 80px; z-index: 2; opacity: 0; transform: translateY(100px); }

/*　上に上がる動き　*/
#page-top.UpMove { animation: UpAnime 0.5s forwards; }

@keyframes UpAnime { from { opacity: 0;
				transform: translateY(80px); }
		to { opacity: 1;
				transform: translateY(0); } }

/*　下に下がる動き　*/
#page-top.DownMove { animation: DownAnime 0.5s forwards; }

@keyframes DownAnime { from { opacity: 1;
				transform: translateY(0); }
		to { opacity: 1;
				transform: translateY(100px); } }

.grecaptcha-badge { opacity: 0; }
