@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&display=swap');
.anton{ font-family:"Anton", sans-serif; }
.oswald{ font-family:"Oswald", sans-serif; }

*{ padding:0; margin:0; box-sizing:border-box; }
html{ color:#000000; }
body{ display:flex; flex-flow:column; justify-content:space-between;  font-family:"Noto Sans JP", sans-serif; overflow-x:hidden; width:100%; min-height:100vh; position:relative; }
body.nav_open{ overflow:hidden; }

/* PC */
@media screen and (min-width:768px) {
	html{ font-size:1px; }
	body{ font-size:16rem; line-height:1.8;
		background:url("./img/character.png") no-repeat right calc(100vw / 1920 * 131) top 120rem, url("./img/bg.png") repeat center;
		padding-top:100rem;
	}
	.sp{ display:none !important; }
	.inner{ width:100%; max-width:1202rem; margin:0 auto; padding:0 30rem; }
}
/* SP */
@media screen and (max-width:767px) {
	html{ font-size:0.5px; }
	body{
		font-size:24rem; line-height:1.8; background:url("./img/character.png") no-repeat center 250rem/ 740rem, url("./img/bg_sp.png") repeat center/calc(750rem / 2) auto;
		padding-top:128rem;
	}
	.pc{ display:none !important; }
}

a{ color:inherit; }
img{ max-width:100%; vertical-align:bottom; }

/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
}

#header{ position:fixed; top:0; left:0; z-index:1000; width:100vw; }
#header .logo{ display:block; }
#header .logo svg path{ fill:#000000; transition:all 300ms 0s ease; }
#header .logo:hover svg path{ fill:#d87035; }
#header .link{ font-family:"Anton", sans-serif; }
#header .link a{ text-decoration:none; transition:all 300ms 0s ease; }
#header .link a:hover{ color:#d87035; }
/* PC */
@media screen and (min-width:768px) {
	#header{ padding:0 30rem; }
	#header .inner{ max-width:1600rem; display:flex; justify-content:space-between; align-items:center; padding:10rem 0; }
	#header .logo{ width:145rem; }
	#header .link{
		display:flex; gap:1em;
		font-size:28rem; line-height:1.0;
	}
	#header .open{ display:none; }
}
/* SP */
@media screen and (max-width:767px) {
	#header{ padding:10rem 0 0; }
	#header .inner{ display:flex; justify-content:space-between; align-items:center; }
	#header .logo{ width:145rem; margin-left:50rem; }
	#header nav{
		position:fixed; left:0; top:0; width:100vw; background:#d87035; color:#FFFFFF;
		display:flex; flex-flow:column; align-items:center;
		padding:150rem 0 120rem;
		transform:translateY(-100%); transition:all 300ms 0s ease;
	}
	#header .link{ margin-bottom:50rem }
	#header .link a{
		display:block; text-align:center; 
		font-size:36rem; line-height:100rem;
	}
	#header nav .logo{ width:411rem; }
	#header nav .logo::before{ display:block; content:""; width:100%; background:url("img/logo_w.png") no-repeat center/cover; aspect-ratio:1467 / 653; }
	#header .open{ width:50rem; height:50rem; position:relative; margin-right:30rem; cursor:pointer; }
	#header .open i{ background:#040404; width:12rem; height:12rem; position:absolute; left:calc(25rem - 3rem); transition:all 300ms 0s ease; }
	#header .open i:nth-child(1){ top:0; }
	#header .open i:nth-child(2){ top:calc(25rem - 3rem); }
	#header .open i:nth-child(3){ top:calc(50rem - 6rem); }
	
	.nav_open #header nav{ transform:translateY(0%); }
	.nav_open #header .open i{ background:#FFFFFF; width:50rem; left:0; top:calc(25rem - 3rem); }
}


#footer{ background:#217A7E; color:#FFFFFF; }

.icon{ display:inline-block; aspect-ratio:1 / 1; font-size:0; line-height:0; }
.icon.i{ background:url("img/icon_i.svg") no-repeat center/cover; }
.icon.x{ background:url("img/icon_x.svg") no-repeat center/cover; }
.icon.t{ background:url("img/icon_t.svg") no-repeat center/cover; }
.icon.f{ background:url("img/icon_f.svg") no-repeat center/cover; }
.icon.y{ background:url("img/icon_y.svg") no-repeat center/cover; }
#footer .sns{ display:flex; justify-content:center; align-items:center; }
#footer .sns a svg path{ fill:#FFFFFF; transition:all 300ms 0s ease; }
#footer .sns a:hover svg path{ fill:#d87035; }
#footer .link{ font-family:"Anton", sans-serif; }
#footer .link a{ text-decoration:none; transition:all 300ms 0s ease; }
#footer .link a:hover{ color:#d87035; }
#footer .copy{ font-family:"Anton", sans-serif; text-align:center; }
/* PC */
@media screen and (min-width:768px) {
	#footer{ padding:50rem 0 10rem; box-shadow:0 8rem 51rem rgba(72,72,72,0.44); }
	#footer .link{ display:flex; justify-content:center; gap:1em; font-size:22rem; line-height:1.4; margin-bottom:40rem; }
	#footer .sns{ gap:25rem; margin-bottom:60rem; }
	#footer .icon{ width:38rem; height:38rem; }
	#footer .copy{ font-size:12rem; line-height:1.0; }
}
/* SP */
@media screen and (max-width:767px) {
	#footer{ padding:50rem 0 10rem; box-shadow:0 8rem 51rem rgba(72,72,72,0.44); }
	#footer .link{ display:flex; flex-wrap:wrap; font-size:28rem; line-height:72rem; margin-bottom:40rem; }
	#footer .link a{ display:block; text-align:center; width:calc(100% / 1); }
	#footer .sns{ gap:36rem; margin-bottom:60rem; }
	#footer .icon{ width:52rem; height:52rem; }
	#footer .copy{ font-size:22rem; line-height:1.0; }
}

.page_ttl{ font-family:"Anton", sans-serif; font-weight:normal; letter-spacing:0.075em; }

/* PC */
@media screen and (min-width:768px) {
	.page_ttl{ font-size:36rem; line-height:1.0; padding:0 5rem 15rem; border-bottom:1px solid #000000; margin-bottom:30rem; }
	.side .page_ttl{ font-size:22rem; line-height:1.0; padding:0 10rem 5rem; margin-bottom:20rem; }
}
/* SP */
@media screen and (max-width:767px) {
	.page_ttl{ font-size:70rem; line-height:1.0; text-align:center; margin-bottom:50rem; }
	.main .page_ttl{ padding-bottom:20rem; border-bottom:1px solid #000000; }
}

.column_1 .main{
	background:rgba(255,255,255,0.6);
}
.main .img_list{ display:flex; flex-flow:wrap; }
.main .img_list .item{ position:relative; }
.main .img_list .item::before{
	display:block; content:""; background:url("img/cover.png") no-repeat center/cover;
	position:absolute; left:0; top:0; right:0; bottom:0; z-index:1; opacity:0.0;  transition:all 300ms 0s ease;
}
.main .img_list .item .txt{
	display:flex; justify-content:center; align-items:center; flex-flow:column; color:#FFFFFF;
	position:absolute; left:0; top:0; right:0; bottom:0; z-index:2; opacity:0.0;  transition:all 300ms 0s ease;
}
.main .img_list .item:hover::before,
.main .img_list .item:active::before{ opacity:0.9; }
.main .img_list .item:hover .txt,
.main .img_list .item:active .txt{ opacity:1.0; }

.main .img_list.disco .item .img{ display:flex; justify-content:center; align-items:center; aspect-ratio:1 / 1; background:#cacaca; }
.main .img_list.disco .item .img img{ max-width:100%; max-height:100%; }

/* PC */
@media screen and (min-width:768px) {
	.column_1{ max-width:1140rem; padding-bottom:96rem; }
	.column_1 .main{ padding:28rem; max-width:1080rem; margin:auto; }
	.main .img_list{ gap:28rem; }
	.main .img_list .item{ width:calc((100% - 28rem * 2) / 3); }
	.main .img_list .item .txt .b{ font-size:24rem; line-height:1.2; }
	.main .img_list .item .txt .s{ font-size:16rem; line-height:1.4; }
}
/* SP */
@media screen and (max-width:767px) {
	.column_1 .main{ padding:70rem 30rem 80rem; margin:0 50rem 130rem; }
	.main .img_list{ gap:32rem; }
	.main .img_list .item{ width:100%; }
	.main .img_list .item .txt .b{ font-size:44rem; line-height:1.2; }
	.main .img_list .item .txt .s{ font-size:30rem; line-height:1.4; }
}

.column_2{}
.column_2 .main,
.column_2 .side section{
	background:rgba(255,255,255,0.85);
}


.column_2 .main .item{ display:block; text-decoration:none; }
.column_2 .main .item time{ display:inline-block; font-family:"Oswald", sans-serif; white-space:pre; }
.column_2 .main .item .cat{ display:inline-flex; }
.column_2 .main .item .cat span{ display:inline-block; background:#207a7e; color:#FFFFFF; padding:0 0.5em; margin-left:1em; }
.column_2 .main .item .sub{ display:block; font-weight:700; }

.column_2 .side .item{ text-decoration:none; border-bottom:1px solid #d87035; }
.column_2 .side time{ display:flex; justify-content:center; align-items:center; background:#d87035; font-family:"Oswald", sans-serif; color:#FFFFFF; line-height:1.0; white-space:pre; }
.column_2 .side .sub{ font-weight:700; }
.column_2 .side .more{ text-align:right; font-family:"Anton", sans-serif; }
.column_2 .side .more a{ transition:all 300ms 0s ease; }
.column_2 .side .more a:hover{ color:#d87035; }

.nav-links{ display:flex; justify-content:center; align-items:center; }
.page-numbers{ line-height:1.0; margin:0 0.5em; }
.page-numbers:not(.prev):not(.next){ font-family:"Anton", sans-serif; }
.back{ text-align:center; }
.back a{ font-family:"Anton", sans-serif; }
.back span{ padding:0 0.5em; }
/* PC */
@media screen and (min-width:768px) {
	.column_2{ display:flex; align-items:flex-start; max-width:1140rem; padding-bottom:96rem; }
	.column_2 .main{ width:calc(100% / 1142 * 753); padding:28rem; }
	.column_2 .side{ display:flex; flex-flow:column; width:calc(100% / 1142 * 373); }
	.column_2 .side section{ padding:28rem 20rem; }
	.column_2, .column_2 .side{ gap:16rem; }
	.column_2 .main, .column_2 .side section{ border-radius:6rem; }
	
	.column_2 .main .list .item{ font-size:16rem; line-height:1.4; margin-bottom:30rem; }
	.column_2 .main .list .item time{ font-size:14rem; line-height:16rem; }
	.column_2 .main .list .item .sub{ margin-top:10rem; }
	
	.column_2 .side .list{ margin-top:-16rem; }
	.column_2 .side .item{ display:flex; gap:18rem; font-size:16rem; line-height:1.4; padding:16rem 0; }
	.column_2 .side .item time{ width:98rem; height:25rem; font-size:16rem; }
	.column_2 .side .item .sub{ width:calc(100% - 98rem - 18rem); }
	.column_2 .side .more{ font-size:24rem; line-height:1.0; margin-top:20rem; }
	
	
	.column_2 .back{ margin-top:40rem; }
	
	.page-numbers{ font-size:18rem; }
	.back{ font-size:24rem; }
}
/* SP */
@media screen and (max-width:767px) {
	.column_2{ padding:0 50rem 136rem; }
	
	.column_2 .main,
	.column_2 .side section{ padding:70rem 30rem 80rem; }
	
	.column_2 .main .list{ margin-top:-35rem; }
	.column_2 .main .list .item{ display:block; padding:35rem 0; border-bottom:1px solid #d87035; }
	.column_2 .main .list .item time{ display:inline-flex; justify-content:center; align-items:center; background:#d87035; font-family:"Oswald", sans-serif; color:#FFFFFF; line-height:1.0; }
	.column_2 .main .list .item time{ width:140rem; height:42rem; font-size:24rem; }
	.column_2 .main .list .sub{ font-size:28rem; line-height:1.4; margin-top:20rem; }
	
	
	.column_2 .side section{ margin-top:96rem; }
	.column_2 .side .list{ margin-top:-35rem; }
	.column_2 .side .item{ display:block; padding:35rem 0; }
	.column_2 .side .item time{ width:140rem; height:42rem; font-size:24rem; }
	.column_2 .side .item .sub{ font-size:28rem; line-height:1.4; margin-top:20rem; }
	.column_2 .side .more{ font-size:28rem; line-height:1.0; margin-top:30rem; }
	
	.column_2 .back{ margin-top:70rem; }
	
	.page-numbers{ font-size:24rem; }
	.back{ font-size:28rem; }
}

iframe.video{
	display:block;
	aspect-ratio:560 / 315;
	width:100%;
}

.meta time{ font-family:"Oswald", sans-serif; font-weight:normal; }
.meta h3{ display:flex; justify-content:space-between; font-weight:700; }
.meta h3 a{ font-family:"Anton", sans-serif; font-weight:normal; }

.body ol,
.body ul{ list-style-position:inside; }
.body li{ padding-left:1em; text-indent:-1em; }
.body>*:not(:last-child){ margin-bottom:1.6em; }
.body .img{ text-align:center; }

/* PC */
@media screen and (min-width:768px) {
	.alignleft{ margin-right:40rem; margin-bottom:20rem; }
	.aligncenter{ margin-bottom:20rem; }
	.alignright{ margin-left:40rem; margin-bottom:20rem; }
	.wp-caption figcaption{ font-size:12rem; line-height:1.2; padding:10rem; }
	
	.meta time{ font-size:16rem; line-height:1.4; margin-bottom:10rem; }
	.meta h3{ font-size:24rem; line-height:1.4; margin-bottom:15rem; }
	.meta h3 span{ font-size:29rem; line-height:1.4; }
	.meta h3 a{ font-size:27rem; line-height:1.4; }
	
	.body{ font-size:16rem; line-height:1.6; }
	.body h1{ font-size:28rem; line-height:1.2; }
	.body h2{ font-size:26rem; line-height:1.2; }
	.body h3{ font-size:24rem; line-height:1.2; }
	.body h4{ font-size:22rem; line-height:1.2; }
	.body h5{ font-size:20rem; line-height:1.2; }
	.body h6{ font-size:18rem; line-height:1.2; }
	
	.pc_lr{ -webkit-writing-mode:vertical-lr; -ms-writing-mode:tb-lr; writing-mode:vertical-lr; vertical-align:middle; white-space:nowrap; }
	
	.detail .recommend{ font-size:14rem; padding-bottom:60rem; }
	.detail .recommend h3{ margin-bottom:15rem; }
}
/* SP */
@media screen and (max-width:767px) {
	.alignleft{ margin-right:2.0rem; margin-bottom:1.0rem; }
	.aligncenter{ margin-bottom:1.0rem; }
	.alignright{ margin-left:2.0rem; margin-bottom:1.0rem; }
	.wp-caption figcaption{ font-size:20rem; line-height:1.2; padding:10rem; }
	
	.meta time{ font-size:24rem; line-height:1.4; margin-bottom:20rem; }
	.meta h3{ font-size:30rem; line-height:1.4; margin-bottom:30rem; }
	.meta h3 span{ font-size:37rem; line-height:1.4; }
	.meta h3 a{ font-size:31rem; line-height:1.4; }
	
	.body{ font-size:24rem; line-height:1.6; }
	.body h1{ font-size:36rem; line-height:1.2; }
	.body h2{ font-size:34rem; line-height:1.2; }
	.body h3{ font-size:32rem; line-height:1.2; }
	.body h4{ font-size:30rem; line-height:1.2; }
	.body h5{ font-size:28rem; line-height:1.2; }
	.body h6{ font-size:26rem; line-height:1.2; }
	
	.sp_lr{ -webkit-writing-mode:vertical-lr; -ms-writing-mode:tb-lr; writing-mode:vertical-lr; vertical-align:middle; white-space:nowrap; }
	
	.detail .recommend{ font-size:24rem; padding-bottom:25rem; }
	.detail .recommend h3{ margin-bottom:20rem; }
}

.req{ color:#d83535; }

input[type="text"],
input[name="your-email"],
textarea{ width:100%; }

input[type="submit"]{ display:block; margin:auto; background:none; border:none; text-decoration:underline; font-family:"Anton", sans-serif; cursor:pointer; }
input[name="acceptance"]{ margin-right:0.5em; }

/* PC */
@media screen and (min-width:768px) {
	.tbox{ display:table;}
	.tbox>dl{ display:table-row; }
	.tbox>dl>*{ display:table-cell; vertical-align:top; padding:15rem; }
	.tbox>dl:not(:last-child)>*{ border-bottom:1px solid #c6c6c6; }
	.tbox>dl>dt{ white-space:pre; }
	.req{ font-size:12rem; }
	input[type="submit"]{ font-size:24rem; margin-top:30rem; }
	.wpcf7-list-item{ margin-left:15rem; }
}
/* SP */
@media screen and (max-width:767px) {
	.req{ font-size:18rem; }
	.tbox>dl{ padding:28rem 0; }
	.tbox>dl>dt{ padding-bottom:28rem; }
	.tbox>dl:not(:last-child){ border-bottom:1px solid #c6c6c6; }
	input[type="submit"]{ font-size:28rem; margin-top:60rem; }
	.wpcf7-list-item{ margin-left:0; }
}