@charset "UTF-8";

/*
	Theme Name: sorafes2025
*/

@import url('https./fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
/*解星オプティ*/ /*font-family: "Kaisei Opti", serif;*/
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Opti&display=swap');


html{height: 100%;scroll-behavior: smooth;}

body,div,class,img,p,form,fieldset,input,textarea,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,table,th,td {margin: 0;padding: 0;vertical-align: baseline;vertical-align: bottom;}

body {
	font-size: 14px;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	margin: 0 auto;
	word-wrap: break-word;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	box-sizing: border-box;
	color: #fff;
	font-family: "Bellota Text", "Kiwi Maru", "Noto Sans JP", 游ゴシック体, YuGothic-M, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.6em;
	/*background: #3d578+6;※修正前*/
    background: #3d5786;
	letter-spacing: .12em;
}
article, aside, figure, figcaption, footer, header, nav, section {display: block;}

body img {max-width: 100%;height: auto;border: none;}

/*イメージフェード*/
.fade {-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;}
.fade:hover {opacity: 0.6;filter: alpha(opacity=60);}

a {color: #1f7daf;text-decoration: underline;}a:visited {color: #1f7daf;text-decoration: none;}a:active {color: #1f7daf;text-decoration: none;}a:hover {color: #1f7daf;text-decoration: none;}

.inner {
	max-width: 1920px;
	margin: auto;
}
.inner_1000 {
	max-width: 1000px;
	margin: auto;
    padding: 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.inner_1160 {
	max-width: 1160px;
	margin: auto;
    padding: 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 767px) {
    .inner_1160 {
        padding: 0 5px;
    }
}


/* HOMEメインビジュアルここから */
.main {
	/*background: url(./images/main_bg.webp);*/
	background-size: contain;
	text-align: center;
	position: relative;
	/*background-size: 100%;*/
	/*background-repeat: no-repeat;*/
}
@media screen and (min-width: 768px) {
    .main {
        background: url(./images/main_bg_pc.webp) no-repeat top center/ 100% auto;
    }
}
@media screen and (min-width: 501px) and (max-width: 767px) {
    .main {
        background: url(./images/main_bg_tb.webp) no-repeat top center/ 100% auto;
    }
}
@media screen and (max-width: 500px) {
    .main {
        background: url(./images/main_bg_sp.webp) no-repeat top center/ 100% auto;
    }
}

@media screen and (max-width: 767px) {.main_girl_pc {display: none;}}
@media screen and (max-width: 500px) {.main_girl_tb {display: none;}}
@media screen and (min-width: 768px) {.main_girl_tb {display: none;}}
@media screen and (min-width: 501px) {.main_girl_sp {display: none;}}


.main:after {
	content: "";
	display: inline-block;
	width: 100%;
	height: 5%;
	background: linear-gradient(180deg, rgba(33,51,93,0) 47%, rgb(62 87 134) 67%, rgb(61 87 134) 62%);
	position: absolute;
	bottom: 0;
	left: 0;
}
.main .logo {
	display: inline-block;
	position: absolute;
	top: 11.5vw;
	/*left: 7.1vw;*/
    right: 7.1vw;
}
.main .logo img {
	width: 14.3vw;
}
@media screen and (max-width: 800px) {
	.main .logo img {
		width: 14vw;
	}
}
.main-title, .infinite-move {
	position: absolute;
	display: block;
	width: 100%;
	top: 0;
    /*animation: 1s ease-in 0s infinite alternate title;*/
}
.txt-title01 {
	/*top: 92.5vw;*/
    top: 28.6vw;
	/*right: 5.8vw;*/
    left: 2.9vw;
}
/*
@media screen and (max-width: 581px) {
	.txt-title01 {
        top: 88vw;
        right: 5.8vw;
    }
}
*/
/*
.txt-title02 {
	left: 14vw;
	top: 44vw;
}
*/
/*
.infinite-move {
	animation: 1s ease-in 0s infinite alternate pyon-pyon01;
}
.infinite-move img {
	position: absolute;
	z-index: 0;
}
*/
.main-title img {
	position: absolute;
	z-index: 1;
	width: 56vw;
}
/*
@media screen and (max-width: 800px) {
	.main-title img {
		width: 18vw;
	}
}
*/
.main-girl {
	width: 100vw;
}
/*
.baloon {
	width: 100%;
	top: 0;
	left: 0;
	animation: 1s ease-in 0s infinite alternate pyon-pyon01;
}
*/
@keyframes title {
	0% {
		transform: rotate(0deg);
	}
	10% {
		transform: rotate(-4deg);
	}
	100% {
		transform: rotate(-4deg);
	}
}
@keyframes pyon-pyon01 {
	0% {
		top: 54%;
	}
	10% {
		top: 55%;
	}
	100% {
		top: 55%;
	}
}
@keyframes pyon-pyon02 {
	0% {
		top: 74%;
	}
	10% {
		top: 75%;
	}
	100% {
		top: 75%;
	}
}
@keyframes pyon-pyon03 {
	0% {
		top: 79%;
	}
	10% {
		top: 80%;
	}
	100% {
		top: 80%;
	}
}
.note {
	position: absolute;
	bottom: -15px;
	right: 5px;
	letter-spacing: 0.3em;
	z-index: 1;
}
@media screen and (max-width: 800px) {
	.note {
		font-size: 70%;
	}
}
/* HOMEメインビジュアルここまで */


/* HOME block01[宙フェス2025＠東京タワー]ここから */
.home .block01_box {
    width: 100%;
    background: #3d5786;
}
.home .block01 {
    max-width: 930px;
    margin: auto;
    padding: 7% 15px 10% 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block01 .logo {
    width: 90px;
    margin: auto;
}
@media screen and (max-width: 640px) {
    .home .block01 {
        padding: 12% 15px 10% 15px;
    }
    .home .block01 .logo {
        width: 70px;
    }
}
.home .block01 h2 {
    width: 100%;
    font-family: "Kaisei Opti", serif;
    text-align: center;
    margin-top: 8%;
    font-size: 50px;
    line-height: 1.6em;
    letter-spacing: 0.2em;
}
.home .block01 h2 .sema {
    letter-spacing: 0.05em;
}
.home .block01 h2 .ato {
    font-size: 40px;
}
@media screen and (max-width: 949px) {
    .home .block01 h2 {
        font-size: calc(50/949*100vw);
    }
    .home .block01 h2 .ato {
        font-size: calc(40/949*100vw);
    }
}

.home .block01 dl {
	max-width: 610px;
    margin: 20px auto 0 auto;
}
.home .block01 dt {
	float: left;
	width: 120px;
	line-height: 1.8em;
    font-weight: normal;
    font-size: 21px;
}
.home .block01 dd {
	margin-left: 120px;
	line-height: 1.8em;
    font-size: 21px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block01 dd span {
    font-size: 14px;
}
@media screen and (max-width: 767px) {
    .home .block01 dt {
        width: 100%;
        font-size: 16px;
    }
    .home .block01 dd {
        margin-left: 0px;
        font-size: 15px;
    }
    .home .block01 dd span {
        font-size: 12px;
    }
}

.home .block01 .main_nav {
	max-width: 740px;
	margin: 8% auto 0 auto;
}

.home .block01 .main_nav ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	list-style: none;
	text-align: center;
}
.home .block01 .main_nav ul li {
	width: 50%;
	font-size: 21px;
	line-height: 2.6em;
	padding: 0 10px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	.home .block01 .main_nav ul li {
		font-size: 16px;
		padding: 0 5px;
	}
}
@media screen and (max-width: 500px) {
	.home .block01 .main_nav ul li {
		width: 100%;
		margin-bottom: 20px;
	}
}

.home .block01 .main_nav ul li a {
	width: 100%;
	height: 100%;
	display: block;
	border: 1px solid #fff;
	color: #fff;
	text-decoration: none;
	border-radius: 30px;-webkit-border-radius: 30px;-moz-border-radius: 30px;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.home .block01 .main_nav ul li a:hover {
	/*color: #3d5786;*/
	/*background: #fff;*/
	/*background: url(./images/main_nav.svg) no-repeat center right 20px, #fff;*/
}
.home .block01 .main_nav .nav_btn {
	background: #3d5786;
	color: #fff;
	overflow: hidden;
	position: relative;
	z-index: 1;
	transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.home .block01 .main_nav .nav_btn::after {
	background: #edb940;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: -1;
}
.home .block01 .main_nav .nav_btn:hover {
	color: #fff;
	letter-spacing: 0.15em;
}
.home .block01 .main_nav .nav_btn:hover::after {
	transform: scale(1, 1);
}
/* HOME block01ここまで */


/* HOME block02[＼宇宙かわいい東京タワー／]ここから */
.home .block02_img {
    display: flex;
    height: 100%;
    padding: 15% 0;
    justify-content: center;
    align-items: center;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(./images/block02_img.webp);
}
.home .block02_cont {
    max-width: 1030px;
    margin: auto;
    padding: 4% 80px 6% 80px;
    background: rgba(0,0,0, 0.5);
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 1000px) {
    .home .block02_cont {
        padding: 4% 20px 10% 20px;
    }
}
@media screen and (max-width: 640px) {
    .home .block02_cont {
        padding: 4% 15px 14% 15px;
    }
}
.home .block02_cont h2 {
    width: 100%;
    font-family: "Kaisei Opti", serif;
    text-align: center;
    font-size: 36px;
    line-height: 1.6em;
    letter-spacing: 0.2em;
    margin-bottom: 4%;
}
.home .block02_cont h2 img {
    max-width: 500px;
    width: 100%;
}
@media screen and (max-width: 949px) {
    .home .block02_cont h2 {
        font-size: calc(36/949*100vw);
    }
}
@media screen and (max-width: 640px) {
    .home .block02_cont h2 {
        font-size: 16px;
    }
}
.home .block02_cont p {
    font-size: 17px;
    line-height: 2.2em;
    text-align: justify;text-justify: inter-ideograph;
}
@media screen and (max-width: 949px) {
    .home .block02_cont p {
        font-size: 15px;
    }
}
.home .block02_cont .p2 {
    text-indent: -10px;
    font-size: 22px;
}
@media screen and (max-width: 949px) {
    .home .block02_cont .p2 {
        font-size: 18px;
    }
}
/* HOME block02ここまで */


/* HOME block03[NEWS]ここから */
.home .block03 .block03_cont {
    max-width: 1000px;
    margin: auto;
    padding: 9% 15px 10% 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block03_l {
    width: 30%;
    float: left;
}
.home .block03_r {
    width: 70%;
    float: right;
}
.home .block03 h2 {
    font-size: 40px;
    letter-spacing: 0.4em;
}
@media screen and (max-width: 949px) {
    .home .block03 h2 {
        font-size: calc(40/949*100vw);
    }
}
.home .block03_l .btn {
    margin-top: 30%;
}
.home .block03_l .btn a {
    text-align: center;
    max-width: 160px;
    display: block;
    border: 1px solid #fff;
    padding: 10px 20px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    font-size: 16px;
    color: #fff;
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.home .block03_l .btn a:hover {
    background: #fff;
    color: #3d5786;
}
@media screen and (max-width: 640px) {
    .home .block03_l {
        width: 100%;
    }
    .home .block03_r {
        width: 100%;
        margin-top: 40px;
    }
    .home .block03 h2 {
        width: 50%;
        float: left;
        font-size: 26px;
    }
    .home .block03_l .btn {
        width: 50%;
        float: right;
        text-align: right;
        margin-top: 0;
    }
    .home .block03_l .btn a {
        float: right;
    }
}

/*NEW表示 ※必要*/
.home .block03 .news_ul_new {
    background-repeat: no-repeat;
	background-position: left 0px top 7px;
    background-image: url(images/new.png);
    /*padding-left: 38px;*/
    padding-left: 0px;
}
.home .block03 .news_single_new {
    background-repeat: no-repeat;
	background-position: left 0px top 5px;
    background-image: url(images/new.png);
    /*padding-left: 38px;*/
}
.home .block03 .news_ul {
	text-align: left;
	list-style: none;
}
.home .block03 .news_ul li {
	padding: 18px 0px;
    font-size: 16px;
	border-bottom: 1px solid #dedede;
}
@media screen and (max-width: 949px) {
    .home .block03 .news_ul li {
        font-size: 14px;
    }
}
.home .block03 .news_ul li:first-child {
	border-top: 1px solid #dedede;
}
.home .block03 .news_ul li a {
	display: block;
	width: 100%;
	margin: 0;
	padding: 4px 0px;
	color: #fff;
	text-decoration: none;
}
@media only screen and (max-width: 767px) {
    .home .block03 .news_ul li a {
        padding-left: 16px;
        -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    }
}
.home .block03 .news_ul li a:hover {
	color:#fff;
    text-decoration: underline;
}
.home .block03 .news_ul li a p {
	line-height: 1.8em;
}
/* 768px以上一列 */
@media only screen and (min-width: 768px) {
	.home .block03 .news_ul li {display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-orient: horizontal;-webkit-box-direction: normal;-ms-flex-flow: row nowrap;flex-flow: row nowrap;-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
}
/* 日時 */
.home .block03 .news_ul_date {
	margin: 0 46px 0 30px;
	font-weight: 700;
    color: #fff;
    letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
    .home .block03 .news_ul_date {
        margin: 0px;
        padding-left: 16px;
        -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    }
}
/* カテゴリ */
.home .block03 .news_ul_cate {
	display: inline-block;
	min-width: 76px;
	margin: 0 16px 0 0;
	padding: 6px;
	color: #fff;
	font-size: 13px;
	line-height: 1em;
	text-align: center;
    display: none;
}
.home .block03 .news_ul_cate a {
	color: #ffffff;
}
.home .block03 .news_ul_cate.news_ul_info {
	color: #ffffff;
	background: #0c84c8 none;
}
/* HOME block03ここまで */


/* HOME block05[TICKETS INFO]ここから */
.home .block05 {
    background: url(./images/bg_zodiac.webp) no-repeat center center/100% auto, #fff;
}
.home .block05 .block05_cont {
    max-width: 1000px;
    margin: auto;
    text-align: center;
    padding: 12% 15px 10% 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    background: url(./images/block05_character.png) no-repeat bottom 16% right 8%/ 200px auto;
}
@media screen and (max-width: 840px) {
    .home .block05 .block05_cont {
        background: url(./images/block05_character.png) no-repeat bottom 15% right 10px/ 20% auto;
    }
}
@media screen and (max-width: 640px) {
    .home .block05 .block05_cont {
        background: none;
    }
}
.home .block05 h2 {
    font-size: 40px;
    letter-spacing: 0.6em;
    margin-bottom: 4%;
    color: #3d5786;
}
.home .block05 p {
    font-size: 17px;
    line-height: 2.2em;
    color: #000;
}
@media screen and (max-width: 949px) {
    .home .block05 h2 {
        font-size: calc(40/949*100vw);
    }
    .home .block05 p {
        font-size: 14px;
    }
}
@media screen and (max-width: 640px) {
    .home .block05 h2 {
        font-size: 26px;
        line-height: 2em;
    }
}

.home .block05 .start {
    color: #cc0000;
    font-size: 17px;
    line-height: 1.6em;
}
@media screen and (min-width: 473px) {.home .block05 .br_start {display: none;}}

.home .block05 .block05_t1 {
    margin: 40px 0 0 0;
}
.home .block05 .block05_t2 {
    margin: 60px 0 0 0;
}
@media screen and (max-width: 640px) {
    .home .block05 .block05_t2 {
        margin: 40px 0 0 0;
    }
}

.home .block05 .block05_cont .ticket {
    max-width: 280px;
    margin: 15px auto 0 auto;
    text-align: left;
}
.home .block05 .block05_cont .cap {
    max-width: 560px;
    margin: 20px auto 0 auto;
    text-align: left;
}
.home .block05 .block05_cont .cap p {
    font-size: 12px;
}

.home .block05 .main_nav {
	max-width: 480px;
	margin: 5% auto 0 auto;
}

.home .block05 .main_nav01 {
	padding-bottom: 40px;
}

.home .block05 .main_nav ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	list-style: none;
	text-align: center;
}
.home .block05 .main_nav ul li {
	width: 100%;
	font-size: 21px;
	line-height: 2.6em;
	padding: 0 10px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 767px) {
	.home .block05 .main_nav ul li {
		font-size: 16px;
		padding: 0 5px;
	}
}
@media screen and (max-width: 500px) {
	.home .block05 .main_nav ul li {
		width: 100%;
		margin-bottom: 20px;
	}
}
.home .block05 .main_nav ul li a {
	width: 100%;
	height: 100%;
	display: block;
	border: 1px solid #fff;
	color: #fff;
	text-decoration: none;
	border-radius: 30px;-webkit-border-radius: 30px;-moz-border-radius: 30px;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
@media only screen and (max-width: 441px) {
    .home .block05 .main_nav ul li a {
        border-radius: 15px;-webkit-border-radius: 15px;-moz-border-radius: 15px;
    }
}
.home .block05 .main_nav ul li a:hover {
	/*color: #3d5786;*/
	/*background: #fff;*/
	/*background: url(./images/main_nav.svg) no-repeat center right 20px, #fff;*/
}
.home .block05 .main_nav .nav_btn {
	background: #3d5786;
	color: #fff;
	overflow: hidden;
	position: relative;
	z-index: 1;
	transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
@media only screen and (max-width: 441px) {
    .home .block05 .main_nav .nav_btn {
        line-height: 1.6em;
        padding: 10px 0;
    }
}
.home .block05 .main_nav .nav_btn::after {
	background: #edb940;
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	z-index: -1;
}
.home .block05 .main_nav .nav_btn:hover {
	color: #fff;
	letter-spacing: 0.15em;
}
.home .block05 .main_nav .nav_btn:hover::after {
	transform: scale(1, 1);
}
@media only screen and (min-width: 442px) {.br_nav_btn {display: none;}}
@media only screen and (min-width: 383px) {.br_block05 {display: none;}}
/* HOME block05ここまで */


/* HOME block06[宇宙かわいいと出会う広場（無料エリア）]ここから */
.home .block06 {
    /*background: #114393;*/
    background: #3d5786;
    color: #fff;
}
.home .block06 a {
    color: #fff;
}



.home .block06 .map_link li {
    border: 1px solid #fff;
}

.home .block06_r {
	width: 35%;
	float: right;
    /*background: #114393;*/
    background: #3d5786;
    padding: 0 0 40px 0;
}
.home .block06_l {
	width: 65%;
	float: left;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (min-width: 1175px) {
    .home .block06  {
        /*background: url(./images/block06_img_pc.webp) no-repeat left center/65% auto, #114393;*/
        background: url(./images/block06_img_pc.webp) no-repeat left center/65% auto, #3d5786;
    }
}
@media screen and (min-width: 1175px) {.home .block06_l_img_sp {display: none;}}

.home .block06_cont {
    width: 100%;
    padding: 10% 5% 0 5%;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

@media screen and (max-width: 1174px) {
    .home .block06_r {
        width: 100%;
        padding: 0;
    }
    .home .block06_l {
        width: 100%;
    }
    .home .block06_cont {
        max-width: 700px;
        margin: auto;
        padding: 5% 15px;
    }
}
.home .block06_r h2 {
	font-size: 36px;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.4em;
    margin-bottom: 4%;
    font-family: "Kaisei Opti", serif;
}
.home .block06_r h2 .hiroba {
	font-size: 56px;
}
.home .block06_r h2 .muryo-area {
	font-size: 20px;
    line-height: 1.8em;
}
.home .block06_r h3 {
	font-size: 26px;
	text-align: center;
	line-height: 1.8em;
	margin-bottom: 3%;
	font-family: "Kaisei Opti", serif;
}
.home .block06_r p {
	font-size: 14px;
	line-height: 2.2em;
}
@media screen and (max-width: 949px) {
	.home .block06_r h2 {
		font-size: calc(46/949*100vw);
	}
    .home .block06_r h2 .hiroba {
		font-size: calc(76/949*100vw);
	}
	.home .block06_r h2 .muryo-area {
		font-size: calc(20/949*100vw);
	}
	.home .block06_r h3 {
		font-size: calc(26/949*100vw);
	}
	.home .block06_r p {
		font-size: 13px;
	}
}
@media screen and (max-width: 640px) {
	.home .block06_r h2 {
		font-size: 26px;
	}
	.home .block06_r h2 span {
		font-size: 16px;
	}
	.home .block06_r h3 {
		font-size: 20px;
	}
}
.home .block06_r .btn {
	margin-top: 20px;
}
@media screen and (max-width: 1174px) {
    .home .block06_r .btn {
        margin-top: 5%;
    }
}
.home .block06_r .btn a {
	text-align: center;
	max-width: 260px;
    margin: auto;
	display: block;
	border: 1px solid #fff;
	padding: 10px 0;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.home .block06_r .btn a:hover {
	background: #fff;
	color: #3d5786;
}
/* HOME block06ここまで */

/*HOME block06 ～ block08 共通バナー*/
.home .block_banner {
    width: 100%;
}
.home .block_banner_img01 {
    max-width: 250px;
    margin: auto;
}
.home .block_banner_img02 {
    width: 100%;
    margin-top: 30px;
    display: flex;/* 縦方向の中央揃え */
    align-items: center;/* 縦方向の中央揃え */
    gap: 5px;/* 要素間の間隔 */
}
.home .block_banner_img02_l {
    width: 40%;
    float: left;
}
.home .block_banner_img02_r {
    width: 60%;
    float: right;
    padding: 0 0 0 15px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block_banner_img02_r a {
    color: #fff;
}


/* HOME block07[宇宙かわいいを探すホール（有料エリア）]ここから */
@media screen and (min-width: 1175px) {
    .home .block07  {
        background: url(./images/block07_img_pc.webp) no-repeat right center/65% auto, #3d5786;
    }
}
@media screen and (max-width: 1765px) {
    .home .block07  {
        background: url(./images/block07_img_pc.webp) no-repeat right center/auto 100%, #3d5786;
    }
}
@media screen and (max-width: 1174px) {
    .home .block07  {
        background: #3d5786;
    }
}

@media screen and (min-width: 1175px) {.home .block07_r_img_sp {display: none;}}
.home .block07_l {
	width: 35%;
	float: left;
    padding: 0 0 40px 0;
    background: #3d5786;
}
.home .block07_r {
	width: 65%;
	float: right;
    /*padding: 45.2% 0 0 0;*/
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    /*background: url(./images/block07_img_pc.webp) no-repeat center center/120% auto;*/
}

.home .block07_cont {
    width: 100%;
    padding: 10% 5% 0 5%;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 1174px) {
    .home .block07_l {
        width: 100%;
    }
    .home .block07_r {
        width: 100%;
    }
    .home .block07_cont {
        max-width: 700px;
        margin: auto;
        padding: 5% 15px;
    }
}
.home .block07_l h2 {
	font-size: 36px;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.4em;
    margin-bottom: 4%;
    font-family: "Kaisei Opti", serif;
}
.home .block07_l h2 span {
	font-size: 20px;
    line-height: 1.8em;
}
.home .block07_l h3 {
	font-size: 26px;
	text-align: center;
	line-height: 1.8em;
	margin-bottom: 3%;
	font-family: "Kaisei Opti", serif;
}
.home .block07_l p {
	font-size: 14px;
	line-height: 2.2em;
}
@media screen and (max-width: 949px) {
	.home .block07_l h2 {
		font-size: calc(46/949*100vw);
	}
	.home .block07_l h2 span {
		font-size: calc(20/949*100vw);
	}
	.home .block07_l h3 {
		font-size: calc(26/949*100vw);
	}
	.home .block07_l p {
		font-size: 13px;
	}
}
@media screen and (max-width: 640px) {
	.home .block07_l h2 {
		font-size: 26px;
	}
	.home .block07_l h2 span {
		font-size: 16px;
	}
	.home .block07_l h3 {
		font-size: 20px;
	}
}
.home .block07_l .btn {
	margin-top: 20px;
}
@media screen and (max-width: 1174px) {
    .home .block07_l .btn {
        margin-top: 5%;
    }
}
.home .block07_l .btn a {
	text-align: center;
	max-width: 260px;
    margin: auto;
	display: block;
	border: 1px solid #fff;
	padding: 10px 0;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.home .block07_l .btn a:hover {
	background: #fff;
	color: #3d5786;
}
/* HOME block07ここまで */


/* HOME block08[宙フェスとは？]ここから */
.home .block08 {
    background: #fff;
    color: #000;
    background: url(./images/block08_back.svg) no-repeat top center/ auto 100%, #fff;
}
.home .block08_cont {
    max-width: 800px;
    margin: auto;
    padding: 8% 15px 6% 15px;
    font-size: 17px;
	line-height: 2.2em;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
    background: url(./images/block08_character.png) no-repeat bottom right/ 200px auto;
}
.home .block08_cont p {
    text-align: justify;text-justify: inter-ideograph;
}
.block08_cont02 {
    width: 80%;
}
@media screen and (max-width: 829px) {
    .home .block08_cont {
        background: url(./images/block08_character.png) no-repeat bottom right/ 120px auto;
    }
}
@media screen and (max-width: 577px) {
    .home .block08_cont {
        background: none;
    }
    .block08_cont02 {
        width: 100%;
    }
}
@media screen and (max-width: 640px) {
    .home .block08_cont {
        padding: 5% 15px;
    }
}
.home .block08 h2 {
	font-size: 36px;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.4em;
    margin-bottom: 4%;
    color: #3d5786;
    font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 949px) {
	.home .block08 h2 {
		font-size: calc(36/949*100vw);
	}
	.home .block08 p {
		font-size: 14px;
	}
}
@media screen and (max-width: 640px) {
	.home .block08 h2 {
		font-size: 26px;
	}
}
/* HOME block08ここまで */


/* HOME block09ここから */
.home .block09 {
    width: 100%;
    background: #333;
    padding: 5% 0 4% 0;
}
.home .block09 a {
    text-decoration: none;
    color: #fff;
}
.home .block09_cont {
    max-width: 800px;
    padding: 0 15px;
    margin: auto;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block09_cont h2 {
	font-size: 30px;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.8em;
    color: #fff;
    font-family: "Kaisei Opti", serif;
}
@media screen and (max-width: 767px) {
    .home .block09_cont h2 {
        font-size: calc(30/767*100vw);
    }
}
@media screen and (max-width: 640px) {
    .home .block09_cont {
        padding: 0 10px;
    }
    .home .block09_cont h2 {
        font-size: 22px;
    }
}
@media screen and (min-width: 451px) {.br_block09_h2 {display: none;}}

.home .block09_cont p {
    text-align: center;
    margin-top: 20px;
}
.home .block09_cont ul {
    display: flex;
	flex-wrap: wrap;
	max-width: 600px;
    list-style: none;
    text-align: center;
    margin: 40px auto 0 auto;
}
.home .block09_cont ul li {
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
}
.home .block09_cont ul li.img {
    background: url(./images/block09_character.png) no-repeat top center/ 100% auto;
}
@media screen and (max-width: 528px) {
    .home .block09_cont ul li.img {
        background: url(./images/block09_character.png) no-repeat center center/ 100% auto;
    }
}
@media screen and (max-width: 360px) {
    .home .block09_cont ul {
        max-width: 96%;
    }
}
/* HOME block09ここまで */


/*宙サポ出展社募集ここから*/
.home .block10 {
    background: #f07675;
    color: #fff;
    padding: 6% 10px 6% 10px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block10 .h2_t {
    font-family: "Kaisei Opti", serif;
    text-align: center;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.8em;
    letter-spacing: 0.1em;
}
.home .block10 .h2_t a {
    color: #fff;
    letter-spacing: 0.1em;
}
.home .block10 .h2_t span {
    font-size: 40px;
}
.home .block10 .h2_t .and {
    font-size: 30px;
}
@media screen and (max-width : 1417px){
    .home .block10 .h2_t {
        font-size: calc(30/1417*100vw);
    }
    .home .block10 .h2_t span {
        font-size: calc(40/1417*100vw);
    }
    .home .block10 .h2_t .and {
        font-size: calc(30/1417*100vw);
    }
}
@media screen and (max-width : 1000px){
    .home .block10 .h2_t {
        font-size: 20px;
    }
    .home .block10 .h2_t span {
        font-size: 28px;
    }
    .home .block10 .h2_t .and {
        font-size: 20px;
    }
}
@media screen and (min-width : 380px){.br_h2_t {display: none;}}
.home .block10 .block {
    max-width: 900px;
    margin: auto;
    font-size: 14px;
    line-height: 2.2em;
}
.home .block10 .block .info {
    margin-top: 30px;
}
/*ul 数字*/
.home .block10 .block .list_decimal {
	width: 100%;
	padding-left: 20px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block10 .block .list_decimal li {
	width: 100%;
	margin-top: 20px;
	list-style-type: decimal;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block10 .block .list_decimal li a {
    color: #fff;
}
.home .block10 .block .list_decimal li a:hover {
    color: #fff000;
}
/*宙サポ出展社募集ここまで*/


/*HOME block11スポンサーここから*/
.home .block11 {
    background: #3d5786;
    color: #fff;
    padding: 6% 10px 6% 10px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.home .block11 h2 {
    font-size: 40px;
    letter-spacing: 0.6em;
    margin-bottom: 4%;
    color: #fff;
    text-align: center;
    line-height: 1.2em;
}
.home .block11 h2 span {
    font-size: 18px;
    font-weight: normal;
}
@media screen and (max-width: 949px) {
    .home .block11 h2 {
        font-size: calc(40/949*100vw);
    }
    .home .block11 h2 span {
        font-size: 14px;
    }
}
@media screen and (max-width: 640px) {
    .home .block11 h2 {
        font-size: 24px;
    }
}
@media screen and (max-width: 380px) {
    .home .block11 h2 {
        font-size: 20px;
    }
}

.sponsor dl {
	max-width: 1000px;
    margin: auto;
    padding-left: 20px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.sponsor dt {
	width: 180px;
    font-weight: 400;
	line-height: 1.4em;
    padding: 5px 0 20px 0;
    text-align: center;
    border-bottom: 1px dotted #fff;
}
@media screen and (min-width: 961px) {
    .sponsor dt {
        float: left;
    }
}
.sponsor dd {
	margin-left: 180px;
	line-height: 1.4em;
    padding: 5px 0 20px 0;
    border-bottom: 1px dotted #fff;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 960px) {
    .sponsor dt {
        padding: 5px 0 0px 0;
        text-align: left;
        border-bottom: none;
    }
    .sponsor dd {
        margin-left: 0px;
        padding: 5px 0 20px 0;
    }
}
.sponsor01 {
    max-width: 100%;
    text-align: center;
    margin-top: 60px;
}
@media screen and (max-width: 640px) {
    .sponsor01 {
        margin-top: 30px;
    }
}
.sponsor01 img {
    width: 325px;
}
@media screen and (max-width: 900px) {
    .sponsor01 img {
        width: 38%;
    }
}
.sponsor_ul {
    display: flex;
	flex-wrap: wrap;
	max-width: 860px;
    margin: 5% auto 0 auto;
    list-style: none;
    text-align: center;
}
.sponsor_ul li.img01, .sponsor_ul li.img02, .sponsor_ul li.img04 {
    width: 17.58%;
    margin: 0 3%;
}
.sponsor_ul li.img03 {
    width: 23.26%;
    margin: 0 3%;
}
/*HOME block11スポンサーここまで*/



/* HOME block12[お月見クルーズツアー「宙舟」]ここから */
.home .block12 {
    background: #212121;
    position: relative;
}
@media screen and (min-width: 1175px) {
    .home .block12  {
        background: url(./images/block12_img_pc.webp) no-repeat left center/65% auto, #212121;
    }
}
@media screen and (min-width: 1175px) {.home .block12_l_img_sp {display: none;}}

.home .block12_r {
	width: 35%;
	float: right;
    background: #212121;
    padding: 0 0 40px 0;
}
.home .block12_l {
	width: 65%;
	float: left;
    /*background: url(./images/block12_img_pc.webp) no-repeat center center/120% auto;*/
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}


/*日本橋開催の模様*/
.home .block12_l .moyo {
    font-size: 12px;
    padding: 0 0 10px 10px;
    position: absolute;
    bottom: 0px;
    left: 0px;
}

.home .block12_cont {
    width: 100%;
    padding: 10% 5% 0 5%;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
@media screen and (max-width: 1174px) {
    .home .block12_r {
        width: 100%;
    }
    .home .block12_l {
        width: 100%;
    }
    .home .block12_cont {
        max-width: 700px;
        margin: auto;
        padding: 5% 15px 0 15px;
    }
}
.home .block12_r .catch {
    font-size: 14px;
    text-align: center;
}
.home .block12_r .yotei {
    font-size: 13px;
    text-align: center;
    margin-top: 10px;
}
.home .block12_r .cap {
    font-size: 11px;
}
.home .block12_r h2 {
	font-size: 32px;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.4em;
    margin-bottom: 4%;
    font-family: "Kaisei Opti", serif;
}
.home .block12_r h2 span {
	font-size: 16px;
    line-height: 1.4em;
}
.home .block12_r h3 {
	font-size: 18px;
	text-align: center;
	line-height: 1.8em;
	margin-bottom: 3%;
	font-family: "Kaisei Opti", serif;
}
.home .block12_r p {
	font-size: 14px;
	line-height: 2.2em;
}
@media screen and (max-width: 949px) {
	.home .block12_r h2 {
		font-size: calc(46/949*100vw);
	}
	.home .block12_r h2 span {
		font-size: calc(20/949*100vw);
	}
	.home .block12_r h3 {
		font-size: calc(20/949*100vw);
	}
	.home .block12_r p {
		font-size: 13px;
	}
}
@media screen and (max-width: 640px) {
	.home .block12_r h2 {
		font-size: 26px;
	}
	.home .block12_r h2 span {
		font-size: 16px;
	}
	.home .block12_r h3 {
		font-size: calc(22/640*100vw);
	}
}
.home .block12_r .btn {
	margin-top: 20px;
}
@media screen and (max-width: 1174px) {
    .home .block12_r .btn {
        margin-top: 5%;
    }
}
.home .block12_r .btn a {
	text-align: center;
	max-width: 260px;
    margin: auto;
	display: block;
	border: 1px solid #fff;
	padding: 10px 0;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
.home .block12_r .btn a:hover {
	background: #fff;
	color: #3d5786;
}
/* HOME block12ここまで */



/*矢印ボタン*/
.nav_btn {
	position: relative;
	display: inline-block;
	color: #fff;
	text-decoration: none;
	outline: none;
    font-size: 16px;
}
.nav_btn:hover {
	color: #fff;
}
.nav_btn::before{
	content: '';
	position: absolute;
	bottom: -8px;
	left: 15%;
	width: 85%;
	height: 1px;
	background:#fff;
	transition: all .3s;
}
.nav_btn::after{
	content: '';
	position: absolute;
	bottom: -3px;
	right: 0;
	width: 15px;
	height: 1px;
	background: #fff;
	transform: rotate(35deg);
	transition: all .3s;
}
.nav_btn:hover::before{
	left: 30%;
}
.nav_btn:hover::after{
	right: -15%;
}



@media only screen and (max-width: 640px) {.pc {display: none;}}
@media only screen and (min-width: 641px) {.sp {display: none;}}


/*リスト三角矢印*/
.list_yajirushi {
	width: 100%;
    display: flex;
	flex-wrap: wrap;
    list-style: none;
}
.list_yajirushi li {
    width: 100%;
    padding-left: 18px;
    padding-bottom: 8px;
    line-height: 1.8em;
    background: url(./images/list_yajirushi.svg) no-repeat left top 8px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

/*リスト丸*/
.list_maru {
	width: 100%;
    display: flex;
	flex-wrap: wrap;
    list-style: none;
}
.list_maru li {
    width: 100%;
    padding-left: 20px;
    padding-bottom: 8px;
    line-height: 1.8em;
    background: url(./images/list_maru.svg) no-repeat left top 8px;
    -moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}



/*フッター*/
footer {
	width: 100%;
    background: #00171e;
}
footer .logo_footer {
	width: 100%;
    padding: 6% 0;
    text-align: center;
}

footer .copyright {
	text-align: center;
    font-size: 12px;
}
footer .copyright a {
	color: #ccc;
    text-decoration: none;
    line-height: 4em;
}

/*ページTOPへ戻る*/
#page-top {
	position: fixed;
	bottom: 0px;
	right: 0px;
	font-size: 90%;
    border: 1px solid #fff;
}
#page-top a {
	background: #333333;
	opacity: 0.6;
	text-decoration: none;
	color: #fff;
	/*width: 50px;*/
	padding: 0px 0;
	text-align: center;
	display: block;
	border-radius: 3px;-webkit-border-radius: 3px;-moz-border-radius: 3px;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}
#page-top a:hover {
	text-decoration: none;
	background: #999;
	-webkit-transition: 0.3s ease-in-out;-moz-transition: 0.3s ease-in-out;-o-transition: 0.3s ease-in-out;transition: 0.3s ease-in-out;
}


/*電話リンク無効化*/
@media only screen and (min-width: 1010px) {
    .notel {
        pointer-events: none;
    }
}

/*遅延ロード※フッターにJS*/
.sa {
  opacity: 0;
  transition: all .5s ease;
}
.sa.show {
  opacity: 1;
  transform: none;
}
.sa--lr {
  transform: translate(-100px, 0);
}
.sa--rl {
  transform: translate(100px, 0);
}
.sa--up {
  transform: translate(0, 50px);
}
.sa--down {
  transform: translate(0, -100px);
}
.sa--scaleUp {
  transform: scale(.5);
}
.sa--scaleDown {
  transform: scale(1.5);
}
.sa--rotateL {
  transform: rotate(180deg);
}
.sa--rotateR {
  transform: rotate(-180deg);
}



.slide-bottom {
    opacity: 0.8;
    transform: translateY(50px);
    transition: all 1.3s 0s ease-out;
}


/*改行禁止*/
.nowrap {
	white-space: nowrap;
}
/*センター揃え*/
.center {
	text-align: center;
}
/*レフト揃え*/
.left {
	text-align: left;
}
/*ライト揃え*/
.right {
	text-align: right;
}
/*フロートレフト*/
.f_left {
	float: left;
}
/*フロートライト*/
.f_right {
	float: right;
}

/*太字*/
.strong {
	font-weight: 700;
}
/*赤太*/
.style_rb {
	color: #CC0000;
	font-weight: 600;
}
/*赤*/
.style_r {
	color: #CC0000;
}
/*青*/
.style_blu {
	color: #003399;
	font-weight: 200;
}
/*白*/
.style_w {
	color: #ffffff;
}

/*2行目より1字下げ*/
.t-indent-1 {
	padding-left: 1em;
	text-indent: -1em;
}

/*字下げ*/
.text_indent {
	text-indent: -1em;
	padding-left: 1em;
}
.text_indent_left {
	padding-left: 1em;
}
.text_indent_left0 {
	padding-left: 0.4em;
	text-indent: 0em;
}
.text_indent_left1-4 {
	padding-left: 1.4em;
}
.text_indent_left_i {
	padding-left: 1.2em;
	text-indent: -1.2em;
}
.t-indent-8 {
	text-indent: -8px;
}

.justify {
	text-align: justify;
	text-justify: inter-ideograph;
}

/*別ページ(ターゲットブランク)*/
.blank {
    padding-right: 16px;
    background: url(./images/icon_link_blank.png) no-repeat right center;
}

/*打ち消し線*/
.line-through_top {
	color: red;
	text-decoration: line-through;
}
.line-through {
	color: black
}

/*ul 数字*/
.list_decimal {
	width: 100%;
	padding-left: 20px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.list_decimal li {
	width: 100%;
	margin-top: 20px;
	list-style-type: decimal;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

/*ul ●*/
.list_disc {
	width: 100%;
	padding-left: 20px;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}
.list_disc li {
	width: 100%;
	margin-top: 10px;
	list-style-type: disc;
	-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;
}

/*WP標準*/
.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright {
	float: right;
	margin-left: 14px;
}
.alignleft {
	float: left;
	margin-right: 14px;
}

/*投稿ナビゲーション*/
.nav-links {
	display: none;
}

.none {
	display: none;
}

/*改行*/
.br::before {
	content: "\A" ;
	white-space: pre;
}


.clearfix {
	clear: both;
}


/*サイトマップ*/
.sitemap_pages ul li {
    list-style: none;
    padding-bottom: 6px;
}
.sitemap_pages h3 {
    margin-bottom: 8px;
}


/*パンくずリスト*/
.b_list {
	width: 100%;
    margin-top: 30px;
	text-align: left;
	font-size: 14px;
    list-style: none;
    letter-spacing: 0.04em;
}
.b_list li {
	color: #fff;
    display: inline-block;
    line-height: 1.8em;
}
.b_list li a {
	color: #fff;
    text-decoration: underline;
}
.b_list li a:hover {
	color: #fff;
    text-decoration: underline;
}
.b_list li.b_list_home {
    padding-right: 10px;
}
.b_list li.b_list_class {
	padding-left: 16px;
    padding-right: 10px;
	background-repeat: no-repeat;
	background-position: left 0px top 8px;
	background-image: url(images/b_list_next.svg);
}

/*記事内Youtubeレスポンシブ対応*/
article iframe[src*="youtube.com"] {
	width: 100%; /* 任意の横幅を指定 */
	height: auto;
	aspect-ratio: 16/9;
}

/*reCAPTCHA 3表示位置調整
.grecaptcha-badge {
	bottom: 120px !important;
}
*/

/*reCAPTCHA 2
.wpcf7-recaptcha > div {
    margin: 0 auto;
}
@media print, screen and (max-width : 387px) {
    .wpcf7-recaptcha > div {
        transform-origin: 0% 0%;
        transform: scale(0.96);
    }
}
@media print, screen and (max-width : 374px) {
    .wpcf7-recaptcha > div {
        transform-origin: 0% 0%;
        transform: scale(0.845);
    }
}*/



button, input, select, textarea {
	font-family : inherit;
	font-size : 100%;
}
/* Font
--------------------------------------------- */

/* bellota-text-300 - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: normal;
	font-weight: 300;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-300.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* bellota-text-300italic - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: italic;
	font-weight: 300;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-300italic.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* bellota-text-regular - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: normal;
	font-weight: 400;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-regular.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* bellota-text-italic - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: italic;
	font-weight: 400;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-italic.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* bellota-text-700italic - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: italic;
	font-weight: 700;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-700italic.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* bellota-text-700 - latin */
@font-face {
	font-family: 'Bellota Text';
	font-style: normal;
	font-weight: 700;
	src: local(''),
			 url('./font/bellotatext/bellota-text-v4-latin-700.woff') format('woff'), /* Modern Browsers */
			 url('./font/bellotatext/bellota-text-v4-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* kiwi-maru-300 - latin_japanese */
@font-face {
	font-family: 'Kiwi Maru';
	font-style: normal;
	font-weight: 300;
	src: local(''),
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-300.woff') format('woff'), /* Modern Browsers */
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-300.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* kiwi-maru-regular - latin_japanese */
@font-face {
	font-family: 'Kiwi Maru';
	font-style: normal;
	font-weight: 400;
	src: local(''),
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-regular.woff') format('woff'), /* Modern Browsers */
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-regular.ttf') format('truetype'), /* Safari, Android, iOS */
}
/* kiwi-maru-500 - latin_japanese */
@font-face {
	font-family: 'Kiwi Maru';
	font-style: normal;
	font-weight: 500;
	src: local(''),
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-500.woff') format('woff'), /* Modern Browsers */
			 url('./font/kiwimaru/kiwi-maru-v7-latin_japanese-500.ttf') format('truetype'), /* Safari, Android, iOS */
}

/* Header
--------------------------------------------- */
header {
	display: flex;
	flex-flow: row;
	width: 100%;
	z-index: 300;
	width: 100%;
	position: fixed;
	align-items: center;
	top: 0; }

/* Navigation
--------------------------------------------- */
#naviToggle {
	position: fixed;
	right: 0;
	top: 0;
	cursor: pointer;
	z-index: 300;
	width: 76px;
	height: 76px;
	transition: top .3s;
	background: #3d5786;
}
#naviToggle span {
	display: block;
	position: absolute;
	height: 1px;
	width: 100%;
	background: #fff;
	transition: .35s ease-in-out;
	left: 50%;
	width: 34%;
	margin-left: -17%;
}
#naviToggle span:nth-child(1) {
	top: 28px;
}
#naviToggle span:nth-child(2) {
	top: 38px;
	width: 20%;
}
#naviToggle span:nth-child(3) {
	top: 48px;
}

@media screen and (max-width: 800px) {
	#naviToggle {
		transform: scale(0.8);
		transform-origin: top right;
	}
}
#gnavi {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-left: auto;
	position: fixed;
	top: 0;
	right: -100%;
	transition: right .5s, opacity .5s .3s;
	width: 100%;
	overflow-y: hidden;
	overflow-x: hidden;
	height: 100%;
	background: rgb(25 56 116 / 96%);
	opacity: 0;
}

#gnavi .logo {
	display: inline-block;
	margin-bottom: 60px;
	transition: .2s transform ease-in-out;
}
@media screen and (max-width: 800px) {
	#gnavi .logo {
		margin-bottom: 40px;
	}
}
#gnavi .logo img {
	width: 60px;
}
@media screen and (max-width: 800px) {
	#gnavi .logo img {
		width: 40px;
	}
}
#gnavi .logo:hover {
	transform: rotateY(360deg);
}

#gnavi ul {
	margin-left: 100%;
	transition: margin-left .3s;
	margin: 0;
	padding-left: 0;
		list-style-type: none;
}
@media screen and (max-width: 1200px) {
	#gnavi li {
		margin-left: 14px;
	}
}
#gnavi li a {
	transition: .2s color ease-in-out, .2s transform ease-in-out, .2s letter-spacing ease-in-out;
	display: block;
	font-weight: 200;
	letter-spacing: 0.1em;
	text-align: right;
	padding-right: 40px;
	width: 500px;
	margin-left: -500px;
	position: relative;
	line-height: 2.1em;
		color: #fff;
		text-decoration: none;
}
@media screen and (max-width: 800px) {
	#gnavi li a {
		padding-right: 0;
		justify-content: flex-start;
		padding-left: 0;
		padding-right: 0;
		width: auto;
		margin-left: auto;
		text-align: -webkit-auto;
	}
}
#gnavi li a:hover {
	letter-spacing: .4em;
}
@media screen and (max-width: 800px) {
	#gnavi li a:hover {
		letter-spacing: inherit;
	}
}
#gnavi li + li a {
	margin-top: 70px;
}
@media screen and (max-width: 800px) {
	#gnavi li + li a {
		margin-top: 30px;
	}
}
#gnavi li:nth-child(3) a {
	margin-top: 70px;
}
@media screen and (max-width: 800px) {
	#gnavi li:nth-child(3) a {
		margin-top: 30px;
	}
}
#gnavi li a:after {
	letter-spacing: 1em;
	width: 400px;
	display: inline-block;
	text-align: left;
	position: absolute;
	border-left: 1px solid #fff;
	padding-left: 40px;
	font-size: 120%;
	line-height: 1.8em;
	margin-left: 40px;
	transition: .2s font-weight ease-in-out;
}
@media screen and (max-width: 800px) {
	#gnavi li a:after {
		width: auto;
		font-size: 50%;
		padding-left: 0;
		border-left: 0;
		margin-left: 0;
		position: static;
		display: block;
	}
}
#gnavi li a:hover:after {
	font-weight: 700;
}
#gnavi li:first-child a:after {
	/*content: "SORA MARKET & WORKSHOP";*/
    content: "SORA KAWAII AREA";
}
#gnavi li:nth-child(2) a:after {
	/*content: "SORA CRUISE";*/
    content: "SORA KAWAII HALL";
}
#gnavi li:nth-child(3) a:after {
	/*content: "SORA STAGE & STAR PARTY";*/
    content: "SORA NEWS";
}
#gnavi li:nth-child(4) a:after {
	content: "CAMPAIGN";
}
#gnavi li:nth-child(5) a:after {
	content: "SORA NEWS";
}
#gnavi li:last-child {
	padding: 0;
}

.open header {
	position: absolute;
}

.open #gnavi {
	right: 0;
	opacity: 1;
}

.open #naviToggle {
	z-index: 400;
}
.open #naviToggle span {
	top: 35px;
}
.open #naviToggle span:nth-child(1) {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.open #naviToggle span:nth-child(2) {
	width: 0;
}
.open #naviToggle span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

body.open {
	left: -100%; }

.sns {
	transform: scale(0.8);
	padding-top: 50px;
}
@media screen and (max-width: 800px) {
	.sns {
		transform: scale(0.6);
		padding-top: 20px;
	}
}
.sns > div {
	padding: 0 15px;
}
/* SNSアイコンエリア
--------------------------------------------- */
[class*="grid-2"] > .col, [class*="grid-2"] > [class*='col-'] {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
[class*="grid"] {
	box-sizing: border-box;
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
			-ms-flex-flow: row wrap;
					flex-flow: row wrap;
	margin: 0 -5px; }
	.ie8 [class*="grid"] {
		padding: 0; }

.col,
[class*="col-"] {
	box-sizing: border-box;
	-webkit-box-flex: 0;
			-ms-flex: 0 0 auto;
					flex: 0 0 auto;
	padding: 0 5px 10px; }
	.ie8 .col, .ie8
	[class*="col-"] {
		padding: 0; }

.col {
	-webkit-box-flex: 1;
			-ms-flex: 1 1 0%;
					flex: 1 1 0%; }

.grid.col,
.grid[class*="col-"] {
	margin: 0;
	padding: 0;
}
.to-sns {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.to-sns i {
	font-size: 160%;
		color: #fff;
	background: rgb(255 255 255 / 10%);
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	margin-bottom: 10px;
	transition: background .3s, color .3s;
}
@media screen and (max-width: 800px) {
	.to-sns i {
		transform: scale(0.8);
	}
}
.to-sns:hover i {
	background: #fff;
	color: #3d5786;
}
.to-sns i:before {
	transition: transform .3s;
}
.to-sns:hover i:before {
	transform: rotateY(720deg);
}
.to-sns span {
	letter-spacing: 0.3em;
	transition: font-weight .3s;
}
@media screen and (max-width: 800px) {
	.to-sns span {
		font-size: 80%;
		letter-spacing: 0.2em;
	}
}
.to-sns:hover span {
	font-weight: 800;
}
.fa-x:before {
	content: '𝕏';
	font-family: unset;
	font-weight: bold;
}


/* ローディング画面ここから */
#loading {
	background: var(--indigo);
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	text-align: center;
	display: block;
	z-index: 2000; }

.ballScaleMultiple {
	top: 50%;
	left: 50%; }

.ball-beat > div, .ballScaleMultiple > div {
	background-color: #fff;
	border-radius: 100%; }

@keyframes ballScaleMultiple {
	0% {
		transform: scale(0);
		opacity: 0; }
	5% {
		opacity: 1; }
	100% {
		transform: scale(1);
		opacity: 0; } }

.ballScaleMultiple {
	position: relative;
	transform: translateY(-30px); }

.ballScaleMultiple > div:nth-child(2) {
	animation-delay: -.4s; }

.ballScaleMultiple > div:nth-child(3) {
	animation-delay: -.2s; }

.ballScaleMultiple > div {
	position: absolute;
	left: -30px;
	top: 0;
	opacity: 0;
	margin: 0;
	width: 60px;
	height: 60px;
	animation: ballScaleMultiple 1s 0s linear infinite;
}
/* ローディング画面ここまで */


/*オンラインマーケット 宙フェス 夜市*/
.bnr-yoichi {
	display: block;
	position: fixed;
	right: -80px;
	bottom: 41px;
	width: 400px;
	z-index: 300;
}
@media screen and (max-width: 800px) {
	.bnr-yoichi {
		width: 300px;
		right: -55px;
	}
}


/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}/*[type=checkbox]*/,[type=radio],legend{box-sizing:border-box;padding:0}pre,textarea{overflow:auto}embed,iframe,img,legend,object,pre{max-width:100%}html{line-height:1.15;-webkit-text-size-adjust:100%;box-sizing:border-box}body,button,input,optgroup,select,textarea{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}code,kbd,pre,samp{font-size:1em}hr{box-sizing:content-box;background-color:#ccc;border:0;height:1px}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none;height:auto}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;white-space:normal}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}*,::after,::before{box-sizing:inherit}h1,h2,h3,h4,h5,h6{clear:both}cite,dfn,em,i{font-style:italic}blockquote{margin:0 1.5em}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",courier,monospace;line-height:1.6;margin-bottom:1.6em;padding:1.6em}code,kbd,tt,var{font-family:monaco,consolas,"Andale Mono","DejaVu Sans Mono",monospace}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{background:#fff9c0;text-decoration:none}big{font-size:125%}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}figure{margin:1em 0}table{margin:0 0 1.5em;width:100%}body,button,optgroup{font-size:.9rem;line-height:1;font-style:normal;letter-spacing:.04em}


/*改行  <span class="br">改行文字</span>*/
.br::before {
    content: "\A" ;
    white-space: pre ;
}

/*タグ*/
.tags {
    margin-top: 20px;
    font-size: 14px;
}

/*【】の場合*/
.t-indent-4 {
	text-indent: -4px;
}
.t-indent-8 {
	text-indent: -8px;
}

/*2行目より1字下げ*/
.t-indent-1 {
	padding-left: 1em;
	text-indent: -1em;
}


@media screen and (min-width: 768px) {.img_sp {display: none;}}

/*リンク無効化*/
.nolink {pointer-events: none;}

.clearfix {clear: both;}