@charset "UTF-8";
/* CSS Document */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

/* Adobe Fonts */
@import url("https://use.typekit.net/qki5klt.css");


/* ==================================================
FONT
================================================== */
html { font-size: 62.5%; }

body,
#allWrap {
	font-family: 'Hiragino Kaku Gothic ProN', "Yu Gothic M", "Noto Sans JP";
	font-style: normal;
	font-size: 1rem;
	line-height: 1.2;
	letter-spacing: 0;
	color: #fff;

	-webkit-font-smoothing: antialiased; /* WebKitブラウザサポート */
	text-rendering: optimizeLegibility; /* Chrome、Safariサポート */
	-moz-osx-font-smoothing: grayscale; /* Firefoxサポート */
	font-feature-settings: 'liga'; /* IEサポート */
	
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%; /* iPhoneの文字サイズバグの回避 */

}

/*
WEB FONTS
--- URL ---
https://fonts.adobe.com/fonts/kozuka-gothic-pr6n
https://fonts.adobe.com/fonts/bc-alphapipe
https://fonts.adobe.com/fonts/rift-soft

--- CSS ---
▼Kozuka Gothic Pr6N - Medium
font-family: kozuka-gothic-pr6n, sans-serif;
font-weight: 500;

▼Kozuka Gothic Pr6N - Bold
font-family: kozuka-gothic-pr6n, sans-serif;
font-weight: 700;

▼BC Alphapipe - Bold
font-family: bc-alphapipe, sans-serif;
font-weight: 600;

▼Rift Soft - Bold
font-family: rift-soft, sans-serif;
font-weight: 700;
*/


/* ==================================================
LINK
================================================== */
a:link { text-decoration: none; color: #00307c; }
a:visited { text-decoration: none; color: #00307c; }
a:hover { text-decoration: none; color: rgba(0,48,124,0.6); }
a:active { text-decoration: none; color: rgba(0,48,124,0.6); }
/*a { outline: 0; transition: opacity 0.4s ease-out 0s, color 0.4s ease-out 0s; }*/
:focus { outline: 0; }


/* ==================================================
VIEW SWITCH
================================================== */

/* View Switch
------------------------------ */
@media screen and (min-width: 901px) {
.spOnly { display: none !important; }
}

@media screen and (max-width: 900px) {
.pcOnly { display: none !important; }
}


/* ==================================================
PAGE BASE
================================================== */
body {
}

#allWrap {
	text-align: center;
	overflow: hidden;
	font-size: 1.6rem;
	position: relative;
	z-index: 1;
}

img {
	display: block;
	margin: 0 auto;
}

p {
	line-height: 1.8;
}

p:not(:last-child) {
	margin-bottom: 2em;
}

i,em {
	display: inline-block;
}

@media screen and (max-width: 900px) {
	body {
	}

	#allWrap {
	}

	img {
	}

	p {
	}

	p:not(:last-child) {
	font-size: 1.4rem;
	}

	i,em {
	}
}

/* ==================================================
ENTRY BUTTON
================================================== */
#fixed-entryBtn {
	position: fixed;
	z-index: 100;
	width: 200px;
	height: 80px;
	bottom: 25px;
	right: -240px;
	transition: all 0.8s ease-out 0s;
}

#fixed-entryBtn.topPos {
	bottom: calc(100vh - 110px);
}

#fixed-entryBtn.introIn {
	right: 0;
}

#fixed-entryBtn.hide {
	right: -240px;
}

#fixed-entryBtn a {
	display: block;
	width: 100%;
	height: 100%;
	border-top-left-radius: 80px;
	border-bottom-left-radius: 80px;
	background-color: #F3E521;
	color: #000;
	transition: all 0.4s ease-out 0s;
	padding: 12px 30px 0 45px;
}

#fixed-entryBtn a:hover {
	background-color: #2B94C9;
}

#fixed-entryBtn a .txtEn {
	font-family: good-times,sans-serif;
	font-weight: 700;
	font-size: 2.6rem;
	margin-bottom: 3px;
    position: relative;
}

#entryArea .entryBtn a:hover {
	background-color: #000000;
}



#fixed-entryBtn a .txtJp {
	display:block;
	margin-top:3px;
	font-weight: 700;
	font-size: 1.2rem;
	color:#000000;
}



@media screen and (max-width: 900px) {

	#fixed-entryBtn {
		width: 180px;
		height: 68px;
		bottom: 25px;
		right: -200px;
	}

	#fixed-entryBtn a::after {
	    content: "";
	    display: block;
	    width: 20px;
	    height: 20px;
	    position: absolute;
	    top: calc(50% - 13px);
	    right: 10px;
	    border-top: 3px solid #000;
	    border-right: 3px solid #000;
	    transform: rotate(45deg);
	}

	#fixed-entryBtn.topPos {
    bottom: 25px;
	}

	#fixed-entryBtn.hide {
	right: -200px;
	}

	#fixed-entryBtn a {
	padding: 6px 0 0 0;
	}

	#fixed-entryBtn a:hover {
	}

	#fixed-entryBtn a .txtEn {
	font-size: 2.4rem;
	}

	#fixed-entryBtn a .txtEn::before,
	#fixed-entryBtn a .txtEn::after {
	}

	#fixed-entryBtn a .txtEn::before {
	margin-right: 8px;
	}

	#fixed-entryBtn a .txtEn::after {
	margin-left: 6px;
	}

	#fixed-entryBtn a .txtJp {
	font-size: 1.4rem;
	letter-spacing: 0;
	}

	#fixed-entryBtn a .txtJp::after {
	width: 8px;
	height: 8px;
	transform: translateY(-1px);
	}
}

/* ==================================================
HEADER
================================================== */
#hdrWrap {
	position: relative;
}

@media screen and (max-width: 900px) {
	#hdrWrap {
	height: auto;
	}
}

#hdrWrap .lead {
	position: absolute;
	z-index: 3;
	width: 61%;
	max-width: 724px;
	top: 415px;
	left: 0;
	right: 0;
	margin: 0 auto;
	padding: 20px 30px 60px 20px;
	color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
	border-radius: 24px;
	background-color: #0071B3;
	text-align: center;
}



#hdrWrap .lead p {
	margin-bottom:0;
}

#hdrWrap .lead_entryBtn {
	width:388px;
	margin: 20px auto 0;
	position: absolute;
	bottom:-30px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

#hdrWrap .lead_entryBtn a {
	display: block;
  background-color: #F3E521;
	color: #000;
	border-radius: 80px;
	max-width: 388px;
	margin: 0 auto;
	padding: 20px;
	transition: all 0.4s ease-out 0s;
	text-align:center;
    position: relative;
}

#hdrWrap .lead_entryBtn a::after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 7px);
    right: 40px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: rotate(45deg);
}

#hdrWrap .lead_entryBtn a:hover {
	background-color: #ffcb00;
}

#hdrWrap .lead_entryBtn a .txtJp {
	display:block;
	margin-top:0;
	font-size: 1.8rem;
	color:#000;
	font-weight: bold;
}


#hdrWrap .lead p b {
	margin:0 auto 20px;
	font-weight: 700;
	font-size: 108%;
	display:block;
}

@media screen and (max-width: 900px) {

	#hdrWrap .lead_entryBtn {
	    width:80%;
			bottom: -28px;
	}

	#hdrWrap .lead_entryBtn a::after {
	    content: "";
	    display: block;
	    width: 16px;
	    height: 16px;
	    position: absolute;
	    top: calc(50% - 8px);
	    right: 25px;
	    border-top: 3px solid #000;
	    border-right: 3px solid #000;
	    transform: rotate(45deg);
	}



	#hdrWrap .lead {
	font-size: 1.4rem;
	position: relative;
	top: 0;
	margin-top: -60px;
	text-align:left;
	}

	#hdrWrap .lead::before,
	#hdrWrap .lead::after {
	}

	#hdrWrap .lead::before {
	}

	#hdrWrap .lead::after {
	}

	#hdrWrap .lead p {
	}

	#hdrWrap .lead p b {
	}
}

@media screen and (max-width: 640px) {
	#hdrWrap .lead {
	width: calc(100% - 40px);
	padding: 20px 15px 45px;
	}

	#hdrWrap .lead::before,
	#hdrWrap .lead::after {
	display: none;
	}

	#hdrWrap .lead::before {
	}

	#hdrWrap .lead::after {
	}

	#hdrWrap .lead p {
	}

	#hdrWrap .lead p b {
	}
}

#siteTitle {
	position: relative;
	padding: 50px 20px 0;
	height: 800px;
	overflow: hidden;
}



#siteTitle::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url("../img/hdr_bg.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	z-index: -2;
}

#siteTitle img {
	position: relative;
	z-index:10000;
}

@media screen and (max-width: 900px) {
	#siteTitle {
		padding:20px;
		height: 250px;
	}

	#siteTitle::before {
	}

	#siteTitle::after {
	}

	#siteTitle img {
	top: 0;
	width: 100%;
	}
}

/* ==================================================
CONTENTS
================================================== */
#mainCnt {

}

section.area {
	padding: 0 20px;
	max-width: 1000px;
	margin: 0 auto;
}

section.area:not(:last-child) {
	margin-bottom: 140px;
}

section.area .areaTitle {
		line-height: 1;
		margin-bottom: 60px;
}

section.area .areaTitle em {
	display: block;
	font-family: bc-alphapipe, sans-serif;
	font-weight: 600;
	font-size: 6.8rem;
	margin-bottom: 10px;
	text-shadow: 
		#fff 2px 0px,  #fff -2px 0px,
		#fff 0px -2px, #fff 0px 2px,
		#fff 2px 2px , #fff -2px 2px,
		#fff 2px -2px, #fff -2px -2px,
		#fff 1px 2px,  #fff -1px 2px,
		#fff 1px -2px, #fff -1px -2px,
		#fff 2px 1px,  #fff -2px 1px,
		#fff 2px -1px, #fff -2px -1px;
	position: relative;
}

section.area .areaTitle em::after {
	content: "";
	position: absolute;
	width: 300px;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.8);
	z-index: -1;
	border-radius: 80px;
	margin: auto;
	right: 0;
	transform: scale(1.6);
}

section.area .areaTitle span {
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.2em;
		text-shadow: 
		#fff 2px 0px,  #fff -2px 0px,
		#fff 0px -2px, #fff 0px 2px,
		#fff 2px 2px , #fff -2px 2px,
		#fff 2px -2px, #fff -2px -2px,
		#fff 1px 2px,  #fff -1px 2px,
		#fff 1px -2px, #fff -1px -2px,
		#fff 2px 1px,  #fff -2px 1px,
		#fff 2px -1px, #fff -2px -1px;
}

section.area .borderBox {
	padding: 0px;
	text-align: left;
}

@media screen and (max-width: 768px) {
	#mainCnt {
	}

	section.area {
	}

	section.area:not(:last-child) {
	}

	section.area .areaTitle {
	}

	section.area .areaTitle em {
	font-size: 4.8rem;
	}

	section.area .areaTitle em::after {
	width: 210px;
	}

	section.area .areaTitle span {
	}

	section.area .borderBox {
	padding: 0;
	}
}


/* ABOUT AREA
------------------------------ */
#about-cont {
	width:100%;
	padding-top:80px;
	background-color:#1E1441;
}

#aboutArea {
	color: #fff;
	padding: 0 0 60px 0;
}

#aboutArea .areaTitle {
}

#aboutArea .areaTitle em {
}

#aboutArea .areaTitle span {
}

#aboutArea .borderBox {

}

/**/
#aboutArea .description {
	margin-bottom: 30px;
}

#aboutArea .description p {
	text-align: left;
	font-size: 2.2rem;
}

/**/
#aboutArea .columnSet {
	padding-bottom:40px;
}

#aboutArea .columnSet .column {
}

#aboutArea .columnSet .column:nth-child(1) {
	width: 100%;
}

#aboutArea .columnSet .column:nth-child(2) {
	width: 100%;
	margin-top:40px;
}

#aboutArea .columnSet .column dl {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: nowrap;
	flex-direction: row;
	padding-bottom: 15px;
}

#aboutArea .columnSet .column dl:last-child {
	margin-bottom: 0;
}

#aboutArea .columnSet .column dl dt {
	color: #00FFFF;
	border-radius: 16px;
	background-color:#0071B3;
	line-height: 1.2;
	padding: 8px 18px;
	width: 94px;
	text-align: center;
	letter-spacing: 0.2em;
	margin-right: 18px;
	transform: translateY(2px);
	font-size: 1.4rem;
}

#aboutArea .columnSet .column dl dd {
	font-size: 1.8rem;
	font-weight: 400;
	width: calc(100% - 90px);
	line-height: 1.4;
	padding-top: 6px;
}

#aboutArea .columnSet .column_navi .ttl {
	font-family: "Inter",'Hiragino Kaku Gothic ProN', "Noto Sans JP", "Yu Gothic M", "Yu Gothic Medium","Custom Yu Gothic",'Noto Sans JP', Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: 700;
	font-size: 1.2rem;
	text-align: center;
	margin-bottom: 30px;
}

#aboutArea .columnSet .column_navi .ttl span {
	display: block;
  padding: 10px 0 20px;
	margin: 0 auto;
	font-weight: 800;
	font-size: 2.4rem;
	color:#29A2D9;
	letter-spacing: 0.3rem;
}

#aboutArea .columnSet .column_navi .ttl p {
	width: 61px;
	margin: 0 auto;
	border-radius:6px;
	border-bottom:solid 4px #29A2D9;
}



#aboutArea .columnSet .column ul {
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	flex-direction: row;
}

#aboutArea .columnSet .column_navi ul {
	margin:0 auto;
	max-width:800px;
	text-align: center;
}

#aboutArea .columnSet .column_navi ul li {
	width:350px;
	display:inline-block;
	text-align: center;
}

#aboutArea .columnSet .column_navi ul li .pct {
	max-width:207px;
	border-radius: 200px;
	overflow: hidden;
	margin: 0 auto 16px;
}

#aboutArea .columnSet .column_navi ul li .pct img {
}

#aboutArea .columnSet .column_navi ul li .caption {
	margin-top:0;
	font-size: 2.1rem;
}

@media screen and (max-width: 900px) {
	#aboutArea .columnSet .column_navi .ttl span {
		font-size: 1.6rem;
	}

	#aboutArea .columnSet .column_navi ul li {
		margin: 0 5px;
		width:150px;
		display:inline-block;
		text-align: center;
	}

	#aboutArea {
		padding-bottom:60px;
	}

	#aboutArea .areaTitle {
		width:80%;
		margin:0 auto;
	}

	#aboutArea .areaTitle em {
	}

	#aboutArea .areaTitle span {
	}

	#aboutArea .borderBox {
	}

	#aboutArea .description {
	}

	#aboutArea .description p {
	}
	
	#aboutArea .columnSet {
	display: block;
	}

	#aboutArea .columnSet .column {
	}

	#aboutArea .columnSet .column:nth-child(1) {
	width: 100%;
	max-width: 580px;
	margin: 0 auto;
	}

	#aboutArea .columnSet .column:nth-child(2) {
	width: 100%;
	max-width: 480px;
	margin: 50px auto 0;
	}

	#aboutArea .columnSet .column dl {
	}

	#aboutArea .columnSet .column dl:last-child {
	}

	#aboutArea .columnSet .column dl dt {
	}

	#aboutArea .columnSet .column dl dd {
	}

	#aboutArea .columnSet .column .ttl {
	}

	#aboutArea .columnSet .column ul {
	}

	#aboutArea .columnSet .column ul li {
	}

	#aboutArea .columnSet .column ul li .pct {
	}

	#aboutArea .columnSet .column ul li .pct img {
	}

	#aboutArea .columnSet .column ul li .caption {
	}
}

@media screen and (max-width: 768px) {
	#about-cont {
		width: 100%;
		padding-top: 80px;
		background-color: #1E1441;
		margin-top: 100px;
	}

	#aboutArea {
		padding: 0 20px 60px;
	}

	#aboutArea .areaTitle {
	}

	#aboutArea .areaTitle em {
	}

	#aboutArea .areaTitle span {
	}

	#aboutArea .borderBox {
	}

	#aboutArea .description {
	}

	#aboutArea .description p {
	text-align: left;
	font-size: 1.6rem;
	padding:40px 0 20px 0;
	}
	
	#aboutArea .columnSet {
	}

	#aboutArea .columnSet .column {
	}

	#aboutArea .columnSet .column:nth-child(1) {
	max-width: 100%;
	}

	#aboutArea .columnSet .column:nth-child(2) {
	}

	#aboutArea .columnSet .column dl {
	}

	#aboutArea .columnSet .column dl:last-child {
	}

	#aboutArea .columnSet .column dl dt {
	font-size: 1.4rem;
	}

	#aboutArea .columnSet .column dl dd {
	font-size: 1.6rem;
	padding-top:8px;
	}

	#aboutArea .columnSet .column .ttl {
	}

	#aboutArea .columnSet .column ul {
	}

	#aboutArea .columnSet .column ul li {
	}

	#aboutArea .columnSet .column ul li .pct {
	}

	#aboutArea .columnSet .column ul li .pct img {
	}

	#aboutArea .columnSet .column ul li .caption {
	}
}

/* PROGRAM AREA
------------------------------ */
#programArea {
	color: #ffff00;
	max-width: 100%;
	padding: 80px 0 0 0;
}

#programArea .areaTitle {
}

#programArea .areaTitle em {
}

#programArea .areaTitle span {
}

#programArea .bg {
	position: relative;
	padding-top: 0;
}

#programArea .bg::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 640px;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	z-index: -1;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.12);
}

#programArea .column ul {
	margin:40px auto 60px;
	max-width: 600px;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	flex-direction: row;
}

#programArea .column ul li {
	width: calc(100% / 2);
	text-align: center;
	color:#fff;
}

#programArea .column ul li .caption {
	font-size: 1.8rem;
}

#programArea .column ul li span{
	display:block;
	margin-top:10px;
	font-size: 1.2rem;
}

#programArea .column ul li .pct {
	max-width:220px;
	overflow: hidden;
	margin: 0 auto 16px;
}

#programArea .column ul li .pct img {
}



@media screen and (max-width: 640px) {
	#programArea {
	}

	#programArea .areaTitle {
		width:90%;
		margin:0 auto;
	}

	#programArea .areaTitle em {
	}

	#programArea .areaTitle span {
	}

	#programArea .bg {
	padding-top: 40px;
	}

	#programArea .bg::before {
	height: 380px;
	}

	#programArea .column .keynote ul {
		margin-top:0;
	}
}

#programArea .columnSet {
	border-radius:10px;
	border: solid 3px #fff;
	position: relative;
	max-width: 960px;
	margin: 0 auto 50px;
	padding: 0;
	background-image: linear-gradient( 180deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.6) 100%);
}

#programArea .columnSet .column {
	border-color: #07b551;
	margin: 0 auto 40px;
}

#programArea .columnSet .column:last-child {
	margin-bottom: 0;
}

#programArea .columnSet .column .label {
	font-family: rift-soft, sans-serif;
	font-weight: 700;
	font-size: 2.6rem;
	margin-bottom: 20px;
}

#programArea .columnSet .column h3 {
	font-size: 2.6rem;
	font-weight: 700;
	padding:36px 0 36px 100px;
	position: relative;
	border-bottom: solid 1px #fff;
	width: 94%;
	margin: 0 auto;
}

#programArea .columnSet .column h3.case1::before {
	content: "";
	display: inline-block;
	width: 43px;
	height: 44px;
	background-image: url("../img/case1.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	/*! vertical-align: middle; */
	/*! margin-right: 15px; */
	/*! transform: translateY(-2px); */
	position: absolute;
	top: 29px;
	left: 20px;
}

#programArea .columnSet .column h3.case2::before {
	content: "";
	display: inline-block;
	width: 43px;
	height: 44px;
	background-image: url("../img/case2.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	/*! vertical-align: middle; */
	/*! margin-right: 15px; */
	/*! transform: translateY(-2px); */
	position: absolute;
	top: 30px;
	left: 27px;
}

#programArea .columnSet .column h3.case3::before {
	content: "";
	display: inline-block;
	width: 43px;
	height: 44px;
	background-image: url("../img/case3.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	/*! vertical-align: middle; */
	/*! margin-right: 15px; */
	/*! transform: translateY(-2px); */
	position: absolute;
	top: 44px;
	left: 27px;
}

#programArea .columnSet .column h3.case4::before {
	content: "";
	display: inline-block;
	width: 43px;
	height: 44px;
	background-image: url("../img/case4.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	/*! vertical-align: middle; */
	/*! margin-right: 15px; */
	/*! transform: translateY(-2px); */
	position: absolute;
	top: 30px;
	left: 27px;
}


@media screen and (max-width: 640px) {
	#programArea .columnSet {
		width:94%;
		margin: 0 auto 20px;
		padding: 0;
	}

	#programArea .columnSet .column {
	}

	#programArea .columnSet .column:last-child {
	}

	#programArea .columnSet .column .label {
	font-size: 2.2rem;
	}

	#programArea .columnSet .column h3 {
	font-size: 1.6rem;
	padding:20px 10px 20px 66px;
	}

	#programArea .columnSet .column h3::before {
	}

	#programArea .columnSet .column h3.case1::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		background-image: url("../img/case1.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		/*! vertical-align: middle; */
		/*! margin-right: 15px; */
		/*! transform: translateY(-2px); */
		position: absolute;
		top: 19px;
		left: 7px;
	}

	#programArea .columnSet .column h3.case2::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		background-image: url("../img/case2.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		/*! vertical-align: middle; */
		/*! margin-right: 15px; */
		/*! transform: translateY(-2px); */
		position: absolute;
		top: 20px;
		left: 14px;
	}

	#programArea .columnSet .column h3.case3::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		position: absolute;
		top: 29px;
		left: 14px;
	}


	#programArea .columnSet .column h3.case4::before {
		content: "";
		display: inline-block;
		width: 40px;
		height: 40px;
		background-image: url("../img/case4.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		/*! vertical-align: middle; */
		/*! margin-right: 15px; */
		/*! transform: translateY(-2px); */
		position: absolute;
		top: 20px;
		left: 14px;
	}
}

#programArea .columnSet .column .comment {
}

#programArea .columnSet .column .comment + .guest {
	margin-top: 40px;
}

#programArea .columnSet .column .comment p {
	padding:26px;
	font-size: 1.8rem;
	color: #fff;
}

#programArea .columnSet .column .comment p.main_theme {
	font-size: 2.2rem;
	color: #07b551;
}

main_theme

#programArea .columnSet .column .comment p b {
	font-size: 160%;
	opacity: 0.6;
}

#programArea .columnSet .column .guest {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	flex-direction: row;
	margin-bottom: 40px;
}

#programArea .columnSet .column .guest:last-child {
	margin-bottom: 0;
}

#programArea .columnSet .column .guest .credit {
	width: calc(100% - 295px);
	color:#666;
}

#programArea .columnSet .column .guest .credit dl {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	flex-direction: row;
	line-height: 1.6;
}

#programArea .columnSet .column .guest .credit dl + dl {
	margin-top: 20px;
}

#programArea .columnSet .column .guest .credit dt {
	width: 80px;
}

#programArea .columnSet .column .guest .credit dd {
	width: calc(100% - 80px);
}

#programArea .columnSet .column .guest .thumb {
	width: 255px;
	
}

#programArea .columnSet .column .guest .thumb .pct {
	border: 1px solid #07b551;
	border-radius: 12px;
	overflow: hidden;
}

#programArea .columnSet .column .guest .thumb .pct img {
}

#programArea .columnSet .column .guest .thumb .caption {
	margin-top: 12px;
	font-size: 1.4rem;
	text-align: center;
}

#programArea .columnSet .column .thumb {
}

#programArea .columnSet .column .thumb li {
}

#programArea .columnSet .column .thumb li:last-child {
}

#programArea .columnSet .column .thumb li .pct {
}

#programArea .columnSet .column .thumb li .pct img {
}

#programArea .columnSet .column .thumb li .caption {
}

@media screen and (max-width: 900px) {
	#programArea .columnSet .column .comment {
	}
	
	#programArea .columnSet .column .comment + .guest {
	}

	#programArea .columnSet .column .comment p {
		font-size: 1.5rem;
	}

	#programArea .columnSet .column .comment p.main_theme {
		font-size: 1.8rem;
		color: #07b551;
	}

	#programArea .columnSet .column .comment p b {
	}

	#programArea .columnSet .column .guest {
	}

	#programArea .columnSet .column .guest .credit {
	width: calc(100% - 200px);
	}

	#programArea .columnSet .column .guest .credit dl {
	font-size: 1.4rem;
	}

	#programArea .columnSet .column .guest .credit dl + dl {
	margin-top: 10px;
	}

	#programArea .columnSet .column .guest .credit dt {
	}

	#programArea .columnSet .column .guest .credit dd {
	}

	#programArea .columnSet .column .guest .thumb {
	width: 180px;
	}

	#programArea .columnSet .column .guest .thumb .pct {
	}

	#programArea .columnSet .column .guest .thumb .pct img {
	}

	#programArea .columnSet .column .guest .thumb .caption {
	}

	#programArea .columnSet .column .thumb {
	}

	#programArea .columnSet .column .thumb li {
	}

	#programArea .columnSet .column .thumb li:last-child {
	}

	#programArea .columnSet .column .thumb li .pct {
	}

	#programArea .columnSet .column .thumb li .pct img {
	}

	#programArea .columnSet .column .thumb li .caption {
	}
}

@media screen and (max-width: 640px) {
	#programArea .columnSet .column .comment {
	}

	#programArea .columnSet .column .comment p {
	}

	#programArea .columnSet .column .comment p b {
	}

	#programArea .columnSet .column .guest {
	margin-bottom: 40px;
	}

	#programArea .columnSet .column .guest .credit {
	width: 100%;
	order: 2;
	}

	#programArea .columnSet .column .guest .credit dl {
	}

	#programArea .columnSet .column .guest .credit dl + dl {
	}

	#programArea .columnSet .column .guest .credit dt {
	}

	#programArea .columnSet .column .guest .credit dd {
	}

	#programArea .columnSet .column .guest .thumb {
	order: 1;
	width: 50%;
	margin: 0 auto 20px;
	min-width: 200px;
	}

	#programArea .columnSet .column .guest .thumb .pct {
	}

	#programArea .columnSet .column .guest .thumb .pct img {
	}

	#programArea .columnSet .column .guest .thumb .caption {
	}

	#programArea .columnSet .column .thumb {
	}

	#programArea .columnSet .column .thumb li {
	}

	#programArea .columnSet .column .thumb li:last-child {
	}

	#programArea .columnSet .column .thumb li .pct {
	}

	#programArea .columnSet .column .thumb li .pct img {
	}

	#programArea .columnSet .column .thumb li .caption {
	}
}


/* ENTRY AREA
------------------------------ */
#entryArea {
	color: #000;
}

#entryArea .areaTitle {
}

#entryArea .areaTitle em {
}

#entryArea .areaTitle span {
}

@media screen and (max-width: 900px) {
	#entryArea {
	}

	#entryArea .areaTitle {
	}

	#entryArea .areaTitle em {
	}

	#entryArea .areaTitle span {
	}
}

#entryArea .borderBox {
	border-radius: 40px;
	border: solid 3px #0071B3;
	background-color:#0071B3;
	position: relative;
  max-width: 1000px;
	margin: 0 auto 20px;
	padding: 26px 36px;
	color:#fff;
}

#entryArea .borderBox .block {
}

#entryArea .borderBox .block + .block {
	margin-top: 40px;
}

#entryArea .borderBox .block h3 {
	margin-bottom: 20px;
}

#entryArea .borderBox .block h3 .label {
	color: #fff;
	background-color: #000;
	border-radius: 24px;
	line-height: 1.2;
	margin:0 auto;
	padding: 16px 30px;
	width: 146px;
	text-align: center;
	letter-spacing: 0.2em;
	transform: translateY(2px);
	font-size: 1.7rem;
	font-weight:800;
}

#entryArea .borderBox .block h3 .label.border {
	background-color: #B8272D;
}

#entryArea .borderBox .block .txt {
line-height: 1.8;
}

#entryArea .borderBox .block .txt p {
}

#entryArea .borderBox .block .txt ul {
}


#entryArea .borderBox .block .txt ul li + li {
	margin-top: 10px;
}



@media screen and (max-width: 900px) {
	#entryArea .borderBox {
	}

	#entryArea .borderBox .block {
	}

	#entryArea .borderBox .block + .block {
	}

	#entryArea .borderBox .block h3 {
	}

	#entryArea .borderBox .block h3 .label {
	}

	#entryArea .borderBox .block h3 .label.border {
	}

	#entryArea .borderBox .block .txt {
	font-size: 1.4rem;
	}

	#entryArea .borderBox .block .txt p {
	}

	#entryArea .borderBox .block .txt ul {
	}

	#entryArea .borderBox .block .txt ul li {
	}

	#entryArea .borderBox .block .txt ul li + li {
	}

	#entryArea .borderBox .block .txt ul li::before {
	}
}

#entryArea .entryBtn {
	margin: 40px auto;
}

#entryArea .entryBtn a {
	display: block;
	background-color: #F3E521;
	color: #000;
	border-radius: 80px;
	max-width: 430px;
	margin: 0 auto;
	padding: 16px 20px 20px 20px;
	transition: all 0.4s ease-out 0s;
	text-align:center;
    position: relative;
}

#entryArea .entryBtn a::after {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    position: absolute;
    top: calc(50% - 8px);
    right: 30px;
    border-top: 5px solid #000;
    border-right: 5px solid #000;
    transform: rotate(45deg);
}

#entryArea .entryBtn a:hover {
	background-color: #ffcb00;
}

#entryArea .entryBtn a .txtEn {
	font-family: bc-alphapipe, sans-serif;
	font-weight: 600;
	font-size: 3.6rem;
	margin-bottom: 2px;
}

#entryArea .entryBtn a .txtJp {
	display:block;
	margin-top:6px;
	font-weight: 800;
	font-size: 2.6rem;
	color:#000;
}

@media screen and (max-width: 768px) {
	#entryArea .entryBtn {
	}

	#entryArea .entryBtn a {
	}

	#entryArea .entryBtn a:hover {
	}

	#entryArea .entryBtn a .txtEn {
		width:65%;
		margin:0 auto;
	}

	#entryArea .entryBtn a::after {
	    content: "";
	    display: block;
	    width: 14px;
	    height: 14px;
	    position: absolute;
	    top: calc(50% - 6px);
	    right: 30px;
	    border-top: 3px solid #000;
	    border-right: 3px solid #000;
	    transform: rotate(45deg);
	}

	#entryArea .entryBtn a .txtEn::before,
	#entryArea .entryBtn a .txtEn::after {
	}

	#entryArea .entryBtn a .txtEn::before {
	}

	#entryArea .entryBtn a .txtEn::after {
	}

	#entryArea .entryBtn a .txtJp {
	font-size: 1.6rem;
	}

	#entryArea .entryBtn a .txtJp::after {
	}
}

/* CONTACT AREA
------------------------------ */
#contactArea {
	padding: 0 20px;
}

#contactArea dl {
	font-size: 1.8rem;
	border-top:solid 2px #888;
	border-bottom:solid 2px #888;
	max-width: 500px;
	margin: 0 auto;
	padding: 32px 0;
}

#contactArea dl dt {
}

#contactArea dl dt .label {
	display: inline-block;
	color: #fff;
	border-radius: 20px;
	background-color:#0071B3;
	margin-right: 15px;
	padding: 10px 22px;
	font-size: 90%;
	font-weight:800;
}

#contactArea dl dd {
	margin-top: 20px;
	font-weight: 700;
	/*! font-size: 2rem; */
	letter-spacing: 0.12em;
}

#contactArea dl dd a {
	display: inline-block;
	transition: all 0.4s ease-out 0s;
}

#contactArea dl dd a:hover {
	opacity: 0.7;
}

@media screen and (max-width: 900px) {
	#contactArea {
	}

	#contactArea dl {
	}

	#contactArea dl dt {
	}

	#contactArea dl dt .label {
	}

	#contactArea dl dd {
	}
}

/* ==================================================
FOOTER
================================================== */
#ftrWrap {
	background-color: #1B1464;
	padding: 60px 20px;
	text-align: center;
}

#ftrWrap .logo {
	margin-bottom: 40px;
}

#ftrWrap .logo a {
	display: block;
	width: 50%;
	max-width: 240px;
	margin: 0 auto;
}

#ftrWrap .logo a img {
}

#ftrWrap .copyright {
	color: #fff;
	font-size: 1.4rem;
}

#ftrWrap .copyright b {
	display: inline-block;
	margin-right: 5px;
}

@media screen and (max-width: 768px) {
	#ftrWrap {
		padding: 30px 20px 20px;
	}

	#ftrWrap .logo {
		margin-bottom: 20px;
	}

	#ftrWrap .logo a {
	}

	#ftrWrap .logo a img {
	}

	#ftrWrap .copyright {
		font-size: 1.2rem;
	}

	#ftrWrap .copyright b {
	}
}


/* PAGE TOP
------------------------------ */
#pagetopBtn {
	margin: 120px 0;
}

#pagetopBtn a {
	font-family: good-times,sans-serif;
	font-weight: 500;
	color: #fff;
	font-size: 1.8rem;
	display: block;
	padding: 50px 0 0 0;
	margin: 0 auto;
  position: relative;
	width:180px;
}

#pagetopBtn a::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  position: absolute;
  top: calc(50% - 16px);
  left: 0;
  right: 0;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  transform: rotate(-45deg);
	margin: 0 auto 10px;
	transition: all 0.4s ease-out 0s;
}

#pagetopBtn a:hover {
}

#pagetopBtn a:hover::before {
  top: calc(50% - 24px);
}

#pagetopBtn a img {
}

@media screen and (max-width: 900px) {
	#pagetopBtn {
	}

	#pagetopBtn a {
	}

	#pagetopBtn a::before {
	}

	#pagetopBtn a img {
	}
}


/* ==================================================
SCROLL BACKGROUND
================================================== */

@keyframes bg-txt {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -1680px 0;
	}
	/* 3682pxとは使用した背景画像の長さ */
}

@keyframes bg-txt-sp {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -840px 0;
	}
}

#scrollBg {
	background: url(../img/body_bg.png) no-repeat 0 top;
/*
	background-size: auto 100%;
*/
	background-size: cover;
	background-color:#000;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

}

@media screen and (max-width: 640px) {
#scrollBg {
	background: url(../img/body_bg.jpg) repeat-x 0 0;
	background-size: auto 100%;
	background-color:#000;
	animation: bg-txt-sp 30s linear infinite;
	width: 100%;
	height: auto;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: -1;
	transition: all 2s ease-out 0s;
}

#scrollBg.slideOut {
	bottom: -340px;
}

#scrollBg.slideIn {
	bottom: 0;
}
}


/* ==================================================
ANIMATION
================================================== */

.setPos {
	transition: all 0.6s ease-out 0s;
}

.setPos.off {
	transform: translateY(150px);
	opacity: 0;
}

.setPos.on {
	transform: translateY(0px);
	opacity: 1;
}

/*.setPos-type2 {
	transition: all 0.8s ease-out 0.6s;
}

.setPos-type2.off {
	opacity: 0;
}

.setPos-type2.on {
	opacity: 1;
}*/

@keyframes accessFadein {
	0% { opacity: 0; }
	50% { opacity: 0; }
	100% { opacity: 1; }
}

#allWrap {
	will-change: animation;
	animation: accessFadein 1.8s ease-out 0s both;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ////////////////////////////////////////////////////////////////////////////////////////////////// */


/* ==================================================
OTHERS
================================================== */

.scrollto {/**/}

/* clrfix */
.clrfix::before, .clrfix::after { display: table; content: ''; }
.clrfix::after { clear: both; }

/* iOS フルサイズディスプレイ対応 */
.vfit-cover {
	padding-left: env(safe-area-inset-left);
	padding-right: env(safe-area-inset-right);
}


/*

<!-- #################################################################################################### -->
<!-- #################################################################################################### -->
<!-- #################################################################################################### -->
<!-- #################################################################################################### -->
<!-- #################################################################################################### -->
<!-- ##########　HTML コメントアウト記述ルール　######################################################### -->
<!-- #################################################################################################### -->
<!-- #################################################################################################### -->


<!-- ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ -->
<!-- //////////////////////////////////////////////////////////////////// -->
<!-- ///// メインコンテンツエリア（編集エリア） ///////////////////////// -->
<!-- //////////////////////////////////////////////////////////////////// -->

<!-- //////////////////////////////////////////////////////////////////// -->
<!-- //////////////////////////////////////////////////////////////////// -->
<!-- ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ -->

<!-- ==================== 大ブロックエリア ==================== -->
<!-- ==================== //大ブロックエリア ==================== -->

<!-- ***** 中ブロックエリア *************** -->
<!-- ***** //中ブロックエリア *************** -->

<!-- #ID名 -->
<!-- //#ID名 -->

<!-- .class名 -->
<!-- //.class名 -->

<!-- [memo] -->
<!-- //[memo] -->


<!-- ※※※※※ INCLUDE - HEADER ※※※※※ -->
<!--#include virtual="/common/inc_header.html"-->
<!-- ※※※※※ //INCLUDE - HEADER ※※※※※ -->

<!-- ※※※※※ INCLUDE - FOOTER ※※※※※ -->
<!--#include virtual="/common/inc_footer.html"-->
<!-- ※※※※※ //INCLUDE - FOOTER ※※※※※ -->

<!--
[ id/class Name List ]
wrap > area > (group) > set > box

[ memmo ]
TOPページ → <body id="pageHome">
Newsページ(第2階層) → <body id="pageNews" class="subPage">
-->
*/


/* #################################################################################################### */
/* #################################################################################################### */
/* #################################################################################################### */
/* #################################################################################################### */
/* #################################################################################################### */
/* ##########　コメントアウト記述ルール　############################################################## */
/* #################################################################################################### */
/* #################################################################################################### */


/* //////////////////////////////////////////////////////////////////// */
/* ///// ブロック区切り /////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////////////// */

/* ==================================================
大見出し
================================================== */

/* 中見出し（他、説明など）
------------------------------ */

/* ### 小見出し 1 ### */
/* ### ----- ### */

/* 小見出し 2 */
/* ----- */
