/**
Theme Name: super-awa grinder-man v202502
Theme URL: http://1kc.jp
Author: Hitoshi Taguchi
Version: 1.0
*/

body{
color:#0e0e0e;
background:#000;
line-height:180%;
font-feature-settings: 'palt';
letter-spacing: 0.1rem;
}

a{
color:#0070df;
text-decoration:underline;
}
a:hover{
color:#1042b8;
text-decoration:none;
}

a.a_no_underline{
text-decoration:none;
}

body{
font-family: 'Noto Sans JP', sans-serif;
font-size: 1.25rem;
}

p, ul{
}
/*nav----------------------------------------*/
.navbar-brand{
	line-height: 100%;
	font-size: 1rem;
	color:#eee;
	font-weight: 600;
}
.navbar{
	font-weight: 600;
	font-size: 0.9rem;
	background-color: rgb(17, 30, 42,0)!important;
}

a.navbar-brand{
	text-decoration: none;
}
a:hover.navbar-brand{
	color:#fff;
}
.offcanvas-title{
	line-height: 100%;
	font-size: 1rem;
	color:#eee;
	font-weight: 600;
}

.offcanvas {
    --bs-offcanvas-width: 100%;
	background-color: rgba(0,0,0,0.9) !important;
}
.btn-close {
	--bs-btn-close-opacity: 1;
}


.navbar-light .navbar-nav .nav-link{
	color:#eee;
	padding-right: 1rem;
    padding-left: 1rem;
    padding-bottom: 0rem;
    padding-top: 0rem;
}
.navbar-light .navbar-nav a, .lang-nav a{
	text-decoration: none;
}

.navbar-light .navbar-nav a:hover, .lang-nav a:hover{
	text-decoration: underline;
	color:#ddd;
}
.navbar-light .navbar-nav .active, .lang-nav .active{
	text-decoration: underline;
	font-weight: 700;
	color:#ddd;
}

.navbar-light .navbar-nav .nav-btn{
	color:#eee;
	padding-right: 1rem;
    padding-left: 1rem;
	margin-left: 1rem;
	margin-right: 0rem;
}
.navbar-light .navbar-nav .nav-btn a:hover{
	text-decoration:none;
	color: #ddd;
}

.navbar-light .navbar-toggler{
	    border-color: rgba(0,0,0,0);
}
.navbar-toggler {
    padding: 0 0;
    /*font-size: 1rem;*/
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: .25rem;
}
/*ハンバーガー色変更*/
.navbar-toggler .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
.dropdown:hover>.dropdown-menu {
  display: block;
}
.dropdown>.dropdown-toggle:active {
  /*Without this, clicking will make it sticky*/
    pointer-events: none;
}
/*footer----------------------------------------*/
.footer{
	background: #0f0f0f;
	color: #eee;
	font-size: 1.25rem;
}
.footer a{
	color: #eee;
	text-decoration: none;
}
.footer a:hover{
	color: #ddd;
	text-decoration: underline;
}

.h2-footer{
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 150%;
}
.snsbot{
	font-size: 1.5rem;
}

/* parts----------------------------------------*/

.f-1{
	font-size: 1rem;
}
.f-125{
	font-size: 1.25rem;
}
.f-15{
	font-size: 1.5rem;
}
.f-2{
	font-size: 2rem;
}
.f-3{
	font-size: 3rem;
}
.f-4{
	font-size: 4rem;
}
.f-5{
	font-size: 5rem;
}
.f-6{
	font-size: 6rem;
}
.f-7{
	font-size: 7rem;
}

/*縦書き*/
.w-mode-v{
	writing-mode: vertical-rl;
	text-orientation: mixed;
}

/*h----------------------------------------*/
.h1-01{
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: 0.1rem;
	line-height: 150%;
}
.h1-01 rt{
	font-size: 0.8rem;
	line-height: 180%;
}

.h1-02{
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 170%;
	letter-spacing: 0.1rem;
}

.h1-03{
	font-weight: 400;
	letter-spacing: 0.3rem;
	font-size: 2rem;
	line-height: 150%;
}

.hero-title{
	color: #eee;
}

/*title 2*/
.h2-01{
	font-weight: 600;
	letter-spacing: 0.5rem;
	font-size: 1.6rem;
}
/*copy*/
.h3-01{
	font-family: 'Noto Serif', 'Zen Old Mincho' , serif;
	font-weight: 600;
	letter-spacing: 0.2rem;
	line-height: 200%;
	font-feature-settings: 'palt';
}
.h3-01 rt{
	font-size: 1rem;
	line-height: 180%;
}
.h3-02{
	font-family: 'Noto Serif', 'Zen Old Mincho' , serif;
	font-weight: 600;
	letter-spacing: 0.1rem;
	line-height: 200%;
	font-feature-settings: 'palt';
}
.h4-01{
	font-weight: 600;
	font-size:2rem;
	letter-spacing: 0.1rem;
}

/*text color----------------------------------------*/
.text-gray01{
	color:#63707c;
}
.text-blue{
	color: #1985de;
}

/*font*/
.noto_serif{
	font-family: 'Noto Serif', serif;
}

/* bg parts----------------------------------------*/
.bg-white01{
	background-color:#d8e0e3;
}
.bg-white02{
	background-color:#c2d3d9;
}

.bg-blk{
	background-color:#1a1b1c;
	color: #eee;
}

/* wave divider----------------------------------------*/
.wave-divider {
    position: relative;    /* SVGの位置決めの基準点になります */
    height: 120px;        /* 波の高さを決定します */
    width: 100%;         /* 画面幅いっぱいに広がります */
    overflow: hidden;    /* はみ出た部分を隠します */
}

.wave-divider svg {
    position: absolute;   /* 親要素を基準に絶対配置 */
    width: 100%;
    height: 100%;
}

/*button custum----------------------------------------*/
.btn-primary {
  background-color: #0070df;
  border: 1px solid #0070df;
}

.btn-primary:hover, .btn-primary:not(:disabled):not(.disabled):active {
  background-color: #1042b8;
  border: 1px solid #1042b8;
  text-decoration: none !important
}

.btn-outline-light {
  border: 1px solid #36137e;
  background-color: #36137e;
}

.btn-outline-light:hover, .btn-outline-light:not(:disabled):not(.disabled):active {
  background-color: #6b14ee;
  border: 1px solid #6b14ee;
	color: #eee;
}


/* parts----------------------------------------*/
.hero-logo{
	width: auto;
	height: 50dvh;
}
.head-logo{
	opacity: 0;
}

.lh-base{
	line-height: 180% !important;
}

.rounded {
    border-radius: 1rem!important;
}
.padding-top-head{
	padding-top: 70px;
}
/**/

.img-cover{
	object-fit: cover;
	width: 100%;
	height:40vh;
}
.mov-cover{
	object-fit: cover;
	width: 100%;
	height:100%;
}
.img-cover-square{
	object-fit: cover;
	width: 100%;
	height:100%;
}
.img-cover-theatre{
	object-fit: cover;
	border-radius: 50%;
	width:30vh;
	height:30vh;
}
.img-fopter-logo{
	width: auto;
	height: 90px;
}

.dl-01{
	font-size: 1rem;
	margin-bottom: 0;
	letter-spacing: 0.1rem;
	line-height: 150%;
}
.dl-01 dd{
	margin-bottom: 0.2rem;
}
.dl-02{
	margin-bottom: 0;
	letter-spacing: 0.1rem;
	line-height: 180%;
}

/*swiper*/
.swiper{
	overflow: visible;
	height: 60vh;
	width: 100%;
}

.swiper-slide > img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.swiper-button-next, .swiper-button-prev {
    --swiper-navigation-color: #eee; /*ここに変更する色を指定*/
}
/*YouTube ifrme*/
.swiper-slide iframe {
	object-fit: cover;
	width: 100%;
	height: 100%;
}


/* parts----------------------------------------*/
.mt-6{
	margin-top: 6rem;
}
.mb-6{
	margin-bottom: 6rem;
}
.my-6{
	margin-top: 6rem;
	margin-bottom: 6rem;
}
.pt-6{
	padding-top: 6rem;
}
.pb-6{
	padding-bottom: 6rem;
}
.px-6{
	padding-left: 6rem;
	padding-right: 6rem;
}
.py-6{
	padding-top: 6rem;
	padding-bottom: 6rem;
}	
.mt-7{
	margin-top: 7rem;
}
.mb-7{
	margin-bottom: 7rem;
}
.my-7{
	margin-top: 7rem;
	margin-bottom: 7rem;
}
.pt-7{
	padding-top: 7rem;
}
.pb-7{
	padding-bottom: 7rem;
}
.px-7{
	padding-left: 7rem;
	padding-right: 7rem;
}
.py-7{
	padding-top: 7rem;
	padding-bottom: 7rem;
}

/*add for bootstrap modify---------------------------------------*/
/*20231029*/
.bgvideo-top{
    width: 100%;
	height: 100svh;
}
.bgvideo-page{
    width: 100%;
	height: 30svh;
}
.top_video-bg2 video{
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.top_video-bg2{
	z-index: -10;
	width: 100%;
    height: 100vh;
	overflow: hidden;
	position: fixed;
/*	filter: opacity(0.9);*/
}

/**/
.hero-title{
	display: grid;
	justify-items: center; 
	align-items: center; 
	width: 100%;
	height: 100svh;
	z-index: 20;
	position: absolute;
}
.hero-title-bottom{
	display: grid;
	justify-items: center; 
	align-items: end; 
	width: 100%;
	height: 100svh;
	z-index: 21;
	position: absolute;
}




/*loader-----------------------------------------------------------*/
.loading-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Hide the loader when the video is ready */
.top_video-bg video {
    visibility: hidden;
}

/* Optionally, add a transition effect when hiding the loader */
.top_video-bg video.loaded {
    visibility: visible;
    opacity: 0.9;
    transition: opacity 0.5s;
}


/*media-----------------------------------------------------------*/
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1200px) {
}

@media screen and (max-width: 992px) {
.navbar-brand{
	font-size: 1.2rem;
}
.h3-01{
	font-size:2.4rem;
}
.h3-02{
	font-size:1.7rem;
}
.mb-5{
    margin-bottom: 3rem!important;
}
.pb-5{
    padding-bottom:  3rem!important;		
}
.my-5 {
    margin-top: 3rem!important;
    margin-bottom: 3rem!important;
}
.py-5 {
    padding-top: 3rem!important;
    padding-bottom: 3rem!important;
}
.p-gap{
	padding-left: 0rem;
	padding-right: 0rem;	
}
.card003 > .swiper{
	width: 85%;
}
.ratio {
    width: 80%;
	margin: auto;
}
.mov-cover{
	height:50vh;
}

}

@media screen and (max-width: 768px) {
body{
font-size: 1rem;
line-height:180%;
}
.header-ticket-bot{
	padding-left: 1rem;
	padding-right: 1rem;
}
.navbar-brand{
	font-size: 1.2rem;
}
.padding-top-head{
	padding-top: 10px;
}
.h2-footer{
	font-size: 1.5rem;
}
.h2-footer-sub{
	font-size: 1rem;
}
.h1-01{
font-size: 1.5rem;
}
.h1-02{
font-size: 1.2rem;
}
.f-1, .f-15, .f-125{
	font-size: 1rem;
}
.f-2{
	font-size: 1.5rem;
}
.f-6, .f-7{
	font-size: 6rem;
}

}

@media screen and (max-width: 576px) {
body{
font-size: 1rem;
line-height:180%;
}
.hero-logo{
}
.f-1{
	font-size: 1rem;
}
.f-15, .f-125{
	font-size: 1rem;
}
.f-2{
	font-size: 1.25rem;
}

.f-4, .f-5, .f-6, .f-7{
	font-size: 3.5rem;
}
.wrapimg_center{
	width: auto;
	height: 100%;
}
.overmargin{
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}
.navbar-brand{
	font-size: 1rem;
}
.navbar{
padding-top: 0.5rem;
padding-bottom: 0.5rem;		
}
.footer{
font-size: 0.8rem;
}
.h1-01{
font-size: 1.2rem;
line-height: 200%;
}
.h1-02{
font-size: 1rem;
}
.h2-01{
font-size: 1.25rem;
}
.h3-01{
	font-size: 1.8rem;
	line-height: 170%;
	letter-spacing: 0.1rem;
}
.h3-02{
font-size: 1.5rem;
}
.h4-01{
	font-size:1.7rem;
}
.h4-02{
	font-size:1.25rem;
}
.h4-03{
	line-height: 120%;
	font-size: 2rem;
}
.py-7{
padding-top: 5rem;
padding-bottom: 5rem;
}
.mb-7{
margin-bottom: 5rem;
}
.mt-7{
margin-top: 5rem;
}
.dl-01 {
font-size: 0.9rem;
line-height: 160%;
}
.pt-7 {
    padding-top: 5rem;
}
.pb-7 {
	padding-bottom: 5rem;
}
.h2-footer{
	font-size: 1.25rem;
}
.navbar-nav .nav-item{
	font-size: 1rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
	border-top: #1F1F1F 1px solid;
}
.img-cover-prof{
	height:30vh;
}
.img-cover{
	height:40vh;
}
.mov-cover{
	height:40vh;
}

/*swiper*/
.swiper{
	height: 50vh;
}
.f-sm-01{
	font-size: 3rem;
}
}