@charset "utf-8";

/* header */
header {
	background: rgba(255,255,255,.0);
	height: 100px;
	opacity: 0;
	padding-bottom: 20px;
	position: absolute;
	transition: opacity ease 1s;
	width: 100%;
	z-index: 100;
}
.global-navi-base {
	background: rgba(255,255,255,.0);
	height: auto !important;
	min-height: 50px;
	opacity: 0;
	position: absolute;
	top: 100px!important;
	transition: opacity ease 1s;
	width: 100%;
}
.global-navi ul li a span {
    text-shadow: 0px 0px 5px white, 1px 2px 10em white, 1px -1px 1em white, 2px 2px 5px white;
}
@media screen and (min-width: 1001px) {
	.global-navi-base {
		z-index: 101;
	}
}

/* main */
#main_visual {
	background: #fff;
	height: 100vh;
	position: relative;
	z-index: 101;
}
.main_item {
	background: #fff;
	bottom: 0;
	display: none;
	height: 100vh;
	left: 0;
	position: absolute;
	right: 0;
	text-align: center;
	top: 0;
	width: 100%;
}
.main_item .txt {
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
#main01 {
	z-index: 1;
}
#main01 .txt {
	width: 410px;
}
#main02 {
	z-index: 2;
}
#main02 .txt {
	width: 470px;
}
#main03 {
	background: url(../imgs/main03_img.jpg) no-repeat center top;
	-webkit-background-size: cover;
	background-size: cover;
	z-index: 3;
}
#main03 .txt {
	display: none;
	left: auto!important;
	margin: 0;
	position: absolute;
	right: 00px!important;
	top: 00px!important;
	transform: none;
	width: 540px;
}
#main04 {
	z-index: 4;
}
#main04 .txt {
	width: 500px;
}
#main05 {
	background: url(../imgs/main05_img.jpg) no-repeat center bottom;
	-webkit-background-size: cover;
	background-size: cover;
	z-index: 5;
}
#main05 .img {
	display: none;
}
#main06 {
	z-index: 6;
}
#main06 .txt {
	width: 520px;
}
#main07 {
	background: url(../imgs/main07_bg.jpg) no-repeat center bottom;
	-webkit-background-size: cover;
	background-size: cover;
	z-index: 7;
    overflow: hidden;
    vertical-align: top;
    height: 100vh;
}
 #main07 .img {
     transform: translate(0, 0);
	max-width: 95%;
     height: 100%;
     margin: 0 auto;
     vertical-align: bottom;
}
#main_visual.custom_laptop #main07 .img.img_sp{
	display: none;
}
#main07 .txt {
	left: 50px;
	position: absolute;
	right: auto;
	top: 200px;
	transform: translateY(0);
	width: 160px;
    margin-left:4%;
    z-index: 99;
}
#btn_skip {
	cursor: pointer;
	display: none;
	position: absolute;
	right: 30px;
	top: 30px;
	z-index: 999;
}
#btn_replay {
	cursor: pointer;
	display: none;
	position: absolute;
	right: 3%;
	bottom:0;
	z-index: 11;
}
#btn_skip img, #btn_replay img {
	width: 150px;
}
.main_cap {
	opacity: 0;
	transition: all .5s ease-out;
	z-index: 9;
}
.main_cap.on {
	opacity: 1;
}

@media only screen and (max-width: 1000px) {
	header {
		background: #fff;
	}
	#main01 .txt {
		width: 205px;
	}
	#main03 .txt {
		bottom: 50px!important;
		top: auto!important;
	}
	#main03 {
		background: url(../imgs/main03_img_sp.jpg) no-repeat center bottom;
		-webkit-background-size: cover;
		background-size: cover;
	}
	#main05 {
		background: url(../imgs/main05_img_sp.jpg) no-repeat center bottom;
		-webkit-background-size: cover;
		background-size: cover;
	}
	#main07 {
		background: url(../imgs/main07_img_sp.jpg) no-repeat center bottom;
		-webkit-background-size: cover;
		background-size: cover;
		z-index: 7;
	}

	#main07 .txt {
		width: 150px;
	}
	#btn_skip {
		bottom: auto;
		right: 10px;
		top: 10px;
		width: 75px;
	}
	#btn_replay {
		bottom: auto;
		right: 10px;
		top: 190px;
		width: 75px;
	}
	.main_cap {
		left: auto !important;
		right: 0 !important;
	}
}
/* for iPhone X*/
@media only screen and (device-width : 375px) and (device-height : 812px) and (-webkit-device-pixel-ratio : 3) {
	#main_visual {
		height: calc(100vh - 115px);
	}
}
@media only screen and (max-width: 767px) {
	#main_visual, .main_item {
		height: 476px;
	}
}
/* top */
.wrap {
	position: relative;
}
.sec_information .top_information {
	background: #1b7ec2;
	color: #fff;
	padding: 20px 0;
	text-align: center;
}

/*price*/
.sec_information .price_box {
	width: 100%;
}
.sec_information .price_box div{
	max-width: 662px;
	margin: 10px auto 20px
}
@media only screen and (max-width: 1024px) {
	.sec_information .price_box div{
		max-width: 50%;
		margin: 10px auto 20px
	}
}
@media only screen and (max-width: 768px) {
	.sec_information .price_box div{
		max-width: 50%;
	}
}
@media only screen and (max-width: 640px) {
	.sec_information .price_box div{
		max-width: 80%;
	}	
}
@media only screen and (max-width: 414px) {
	.sec_information .price_box div{
		max-width: 90%;
	}	
}
@media only screen and (max-width: 375px) {
	.sec_information .price_box div{
		max-width: 100%;
	}	
}

.sec_information .merit_title {
	margin-bottom : 0;
}

.sec_information .merit_title p {
	text-align :center;
	color : #fff;
	font-size : 30px;
	line-height : 1.7em;
}

.sec_information .merit_title p span {
	color : #FCD000;
	font-size : 40px;
}

@media only screen and (max-width: 768px) {
	.sec_information .merit_title p {
		font-size : 3vw;
	}

	.sec_information .merit_title p span {
		font-size : 4vw;
	}
}

@media only screen and (max-width: 640px) {
	.sec_information .merit_title p {
		font-size : 6vw;
	}

	.sec_information .merit_title p span {
		font-size : 7vw;
		line-height : 1.5em;
	}
}


/*
.sec_information .merit_box {
	align-items: stretch;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.sec_information .merit_box div {
	padding: 10px 20px;
	position: relative;
	width: 20%;
}
.sec_information .merit_box div:nth-child(3) {
	width: 40%;
}
.sec_information .merit_box div:after {
	background: #fff;
	content: "";
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 1px;
}
.sec_information .merit_box div.last:after {
	display: none;
}
*/
.sec_information .top_information .ttl {
	font-size: 24px;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}
.sec_information .top_information .last.ttl:after {
	display: none;
}
.sec_information .top_information .ttl .large {
	font-size: 32px;
}
.sec_information .top_information .ttl .medium {
	font-size: 20px;
}
.sec_information .top_information .ttl .small {
	font-size: 19px;
}
.sec_information .top_information .ttl .cap {
	font-size: 14px;
}
.sec_information .top_information .ttl .color {
	color: #fcd000;
	line-height: 1;
}


.sec_information .event_information {
	padding: 40px 0 60px;
	text-align: center;
	background : #fff;
}

.sec_information .eventday_area {
	width : 886px;
	margin : 0 auto;
	border-bottom : 1px solid #1B7EC2;
}

.sec_information .eventday_area img {
	display : block;
	width : 740px;
	margin : 0 auto 30px;
}


.sec_information .price_area img {
	display : block;
	width : 687px;
	margin : 30px auto 20px;
}

.sec_information .price_area2 {
	display : none;
}

.sec_information .text_area {
	font-size : 24px;
	margin-bottom : 50px;
	font-weight : bold;
}

.sec_information .summer_day {
	width : 866px;
	border : solid 1px #000;
	padding : 20px 10px;
	font-size : 16px;
	font-weight : bold;
	margin : 0 auto;
}


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

	.sec_information .eventday_area {
		width : 100%;
	}

	.sec_information .eventday_area img {
		width : 100%;
		margin-bottom : 20px;
	}

	.sec_information .price_area img {
		width : 100%;
		margin : 15px auto;
	}

	.sec_information .price_area {
		border-bottom : 1px solid #1B7EC2;
	}

	.sec_information .price_area2 {
		display : block;
		margin : 20px auto;
	}

	.sec_information .price_area2 img {
		width : calc( 400 / 740 * 100%);
	}

	.sec_information .text_area {
		font-size : 3vw;
		margin-bottom : 30px;
	}

	.sec_information .summer_day {
		width : 95%;
		font-size : 3vw;
	}
}



.sec_information .bottom_information {
	padding: 100px 0;
	text-align: center;
}
.sec_information .bottom_information .ttl_en {
	color: #002870;
	font-size: 24px;
}
.sec_information .bottom_information .line {
	background: #002870;
	display: inline-block;
	height: 20px;
	margin-top: 30px;
	width: 1px;
}
.sec_information .bottom_information .ttl_jp {
	color: #002870;
	font-size: 32px;
	margin-top: 20px;
}

/*.sec_information .bottom_information .ttl_jp span {
	border-bottom: 1px solid #002870;
	padding-bottom: 4px;
}*/
.sec_information .bottom_information .txt_01 {
	color: #002870;
	font-size: 32px;
}
.sec_information .bottom_information .ttl_jp .small {
	font-size: 20px;
}
.sec_information .bottom_information .btn_info {
	background: #fbd103;
	color: #000;
	display: inline-block;
	font-size: 20px;
	margin-top: 60px;
	max-width: 100%;
	padding: 20px 15px;
	width: 575px;
}

.sec_information .bottom_information .btn_info.btn1 {
	background: #1B7EC2;
	color : #fff;
}

.sec_information .bottom_information .btn_info.btn2 {
	margin-top: 20px;
}

.sec_information .bottom_information .text {
	font-size: 20px;
	letter-spacing: .15em;
	line-height: 1.8;
	margin-top: 30px;
}
.sec_information .bottom_information .text span {
	border-bottom: 1px solid #231816;
	padding-bottom: 2px;
}
.section .box_inner {
	position: relative;
	z-index: 0;
}
.section .box_inner .box_content {
	background: rgba(255,255,255,.9);
	max-width: 100%;
	padding: 20px 40px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 570px;
	z-index: 9;
}
.section.sec_concept .box_inner .box_content {
	right: 30px;
}
.section .box_inner .box_content .ttl_en {
	color: #002870;
	font-size: 20px;
	margin-top: 35px;
}
.section .box_inner .box_content .ttl_jp {
	font-size: 24px;
	font-weight: 700;
	margin-top: 40px;
}
.section .box_inner .box_content .text {
	border-top: 1px solid #000;
	font-size: 16px;
	letter-spacing: 0;
	line-height: 2;
	margin-top: 35px;
	padding-top: 35px;
}
.section .box_inner .box_content .btn_more {
	border: 1px solid #002870;
	border-right: 0;
	color: #002870;
	display: inline-block;
	font-size: 12px;
	letter-spacing: .2em;
	margin-right: 8px;
	margin-top: 35px;
	padding: 10px 15px;
	position: relative;
}
.section .box_inner .box_content .btn_more .arrow {
	background: url("../imgs/icon_btn_more.png") no-repeat center center;
	background-size: cover;
	display: block;
	height: 14px;
	line-height: 0;
	position: absolute;
	right: -8px;
	top: 50%;
	transform: translateY(-50%);
	transition: all .25s ease;
	width: 12px;
	z-index: 1;
}
.section .box_inner .box_content .btn_more:hover .arrow {
	right: -11px;
}
.section .box_inner .box_content .btn_more:before {
	background: #002870;
	content: "";
	height: calc((100% - 30px)/2);
	position: absolute;
	right: 0;
	top: -1px;
	width: 1px;
	z-index: 1;
}
.section .box_inner .box_content .btn_more:after {
	background: #002870;
	bottom: -1px;
	content: "";
	height: calc((100% - 30px)/2);
	position: absolute;
	right: 0;
	width: 1px;
	z-index: 1;
}
.section .box_inner .box_content .btn_more:hover {
	opacity: 1;
}
.section .box_inner .box_content .btn_more.no_link {
	visibility: hidden;
}
.row_fix {
	margin: 0;
}
.row_fix .col_fix {
	padding: 0;
}
.wrap_box {
	left: 0;
	position: absolute;
	right: 0;
	top: 50%;
}
.section.sec_left_box .box_content {
	left: 0;
	right: auto;
}

@media only screen and (max-width: 1920px) and (max-height: 1080px) {
	#main_visual.custom_laptop {
		height: auto;
		overflow: hidden;
	}
	#main_visual.custom_laptop #main07 {
		background:url("../imgs/main07_bg.jpg")no-repeat;
      background-size: cover;
		height:auto;
        background-position: bottom;
		position: relative;
	}
	#main_visual.custom_laptop #main07 .img.img_pc, #main_visual.custom_laptop #main07 .img {
		display:block;
            max-width: 93.5%;
    margin: 0 auto;
        height: auto;
          transform: translate(0, 0%);
	}
}
@media only screen and (max-width: 768px) {
    #main_visual.custom_laptop #main07 {
        height: 50vh;
         background:url("../imgs/main07_bg.jpg")no-repeat;
        background-position: bottom;
    background-size: cover;
    }
    #main_visual.custom_laptop #main07 .img {
        transform: translate(0, 21%)!important;
        height: auto;
        display: block!important;
        max-width: 93.5%!important;
    }
}
@media only screen and (max-width: 767px) {
    #main_visual.custom_laptop #main07 {
        height: auto;
       
    }
     #main_visual.custom_laptop #main07 .img {
        transform: translate(0, 0%)!important;
    max-width: 100%!important;
    }
	#main_visual.custom_laptop #main07 .img.img_pc {
		display: none!important;
	}
	#main_visual.custom_laptop #main07 .img.img_sp {
		display: block;
            transform: translate(0, 0%);
	}
}
@media only screen and (max-width: 1200px) {
	.section .box_inner .box_content {
		right: 50px;
	}
	.section.sec_left_box .box_content {
		left: 50px;
		right: auto;
	}
	.section .box_inner .box_content .ttl_en {
		margin-top: 20px;
	}
	.section .box_inner .box_content .ttl_jp {
		font-size: 22px;
		margin-top: 20px;
	}
	.section .box_inner .box_content .text {
		margin-top: 20px;
		padding-top: 20px;
	}
	.section .box_inner .box_content .btn_more {
		margin-top: 20px;
	}
}
@media only screen and (max-width: 1024px) {
	.sec_information .bottom_information {
		padding: 30px 0;
	}
	.sec_information .bottom_information .line {
		margin-top: 15px;
	}
	.sec_information .bottom_information .ttl_jp {
		font-size: 4vw;
		margin-top: 15px;
	}
	.sec_information .bottom_information .txt_01 {
		font-size: 4vw;
		/*margin-top: 50px;*/
	}
	.sec_information .bottom_information .ttl_jp .small {
		font-size: 14px;
	}
	.sec_information .bottom_information .text {
		font-size: 16px;
		margin-top: 30px;
	}
	.sec_information .bottom_information .btn_info {
		margin-top: 30px;
		padding: 20px 15px;
		width: 280px;
	}
	.section .box_inner .box_content {
		width: calc(50% - 65px);
	}
	.section .box_inner .box_content .ttl_en {
		margin-top: 0px;
	}
	.section .box_inner .box_content .ttl_jp {
		font-size: 16px;
		margin-top: 15px;
	}
	.section .box_inner .box_content .text {
		font-size: 12px;
		margin-top: 10px;
		padding-top: 10px;
	}
	.sec_information .merit_box div {
		padding: 5px 10px;
	}
	.sec_information .top_information .ttl {
		font-size: 16px;
	}
	.sec_information .top_information .last.ttl:after {
		display: none;
	}
	.sec_information .top_information .ttl .large {
		font-size: 20px;
	}
	.sec_information .top_information .ttl .medium {
		font-size: 12px;
	}
	.sec_information .top_information .ttl .small {
		font-size: 11px;
	}
	.sec_information .top_information .ttl .cap {
		font-size: 10px;
	}
}
@media only screen and (max-width: 800px) {
	.wrap_box {
		position: relative;
		top: 0;
	}
	.section .box_inner .box_content {
		bottom: 0;
		left: 0;
		margin: 10px 0;
		padding: 15px;
		position: relative;
		right: 0;
		top: 0;
		transform: translateY(0);
		width: 100%;
	}
	.section .box_inner .box_content .ar {
		text-align: center;
	}
	.section .box_inner .col-md-7.col_fix {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}
	.section .box_inner .box_content .btn_more.no_link {
		display: none;
		visibility: visible;
	}
}
@media only screen and (max-width: 767px) {
	#main07 .txt {
		left: 10px;
		width: 120px;
	}
	.sec_information .top_information .ttl {
		font-size: 16px;
	}
	.sec_information .top_information .ttl .large {
		font-size: 20px;
	}
	.sec_information .top_information .ttl .medium {
		font-size: 13px;
	}
	.sec_information .top_information .ttl .small {
		font-size: 12px;
	}
	.sec_information .top_information .ttl .cap {
		font-size: 10px;
	}
	.sec_information .bottom_information .text {
		font-size: 14px;
	}
	.sec_information .bottom_information .btn_info {
		font-size: 13px;
		padding: 12px 10px 11px;
	}
	.sec_information .merit_box div {
		width: 100% !important;
	}
	.sec_information .merit_box div:after {
		display: none !important;
	}
	.sec_information .merit_box div:not(.last) {
		border-bottom: 1px solid #fff;
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
}
@media only screen and (max-width: 640px) {
	#btn_replay {
		top: 155px;
	}
	#main07 .txt {
		top: 165px;
	}
}
.owabi{
  text-align: center;
  display: inline-block;
  padding: 30px;
  margin: 50px auto 0;
  border: solid 1px #CDCDCD;
  position: relative;
}
.owabi .tl{
    font-size: 16px;
    line-height: 2;
}
.owabi:after{
  content: "";
  border: solid 1px #CDCDCD;
  position: absolute;
  top: 2px;
  left: 2px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
}

.borderBot_dashed{
	 margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dashed #CDCDCD;
}

/* 20200702お詫びと訂正 */
dl.apo_dl{
	line-height: 1.5;
	overflow: hidden;
	max-width:/*540px*/400px;
	margin-left: auto;
	margin-right: auto;
}
dl.apo_dl dt{
	float: left;
	width: /*25%*/35%;
	padding: 5px 0 5px 5px;
	font-weight: bold;
	text-align: left;
}
dl.apo_dl dd{
	margin-left: /*25%*/35%;
	padding: 5px;
}
dl.apo_dl dd span.pcNone{ display: none;}
		
@media screen and (max-width:768px){						
	dl.apo_dl{
		margin-top: 10px;
		line-height: 1.5;
		max-width:100%;
	}
	dl.apo_dl dt{
		padding: 0 8px;
		font-weight: bold;
		float: none;
		text-align: left;
		width: 100%;
	}
	dl.apo_dl dd{
		float: none;
		padding: 0px 8px 10px;
		margin-bottom:3px;
		text-align: left;
		margin-left: 0;
		width: 100%;
	}
	dl.apo_dl dd span.pcNone{ display: inline-block ;}
}
@media screen and (min-width:1200px){		
	.pc_dispTable{
		display: table;
		table-layout: 100%;
		width: /*100%*/ 80%;
		margin-right: auto;
		margin-right: auto;
	}
	.pc_dispTable .pc_tcell{
		display: table-cell;
		vertical-align: top;
		width: 50%;
	}

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

/* */
/* 登録概要 */
.gaiyo_wrap {
    max-width: 90%;
    margin:10px auto 60px;
}
.text14{
	color:#fff!important;
	font-size: 14px;

}

table.gaiyo {
	font-size: 14px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	background: #1b7ec2;
	border-collapse: collapse;
	padding: 0;
	width: 100%;
	font-family: "游明朝体", "Yu Mincho", YuMincho, 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', 'HGS明朝E', 'ＭＳ Ｐ明朝', serif;
}

.gaiyo th {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    width: 28%;
    padding: 8px;
    color: #FFF!important;
    text-align: left;
}

.gaiyo td {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    padding: 8px;
	color: #000;
    background: #fdffff;
	text-align: left;
}

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

	.gaiyo th {
	    display: block;
	    width: auto;
	}

	.gaiyo td {
	    display: block;
	    width: auto;
	}

	
	.popbtn li.print{
		display:none;
	}

}
.ttl_gaiyo{
	padding-top: 20px;
	font-size: 26px;
	text-align: center;
	/*border-bottom: 1px solid #1b7ec2;*/
	/*color: #1b7ec2;	*/
	font-weight: bold;
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width:999px){
	.gaiyo_wrap, .ttl_gaiyo {
		max-width: 100%;
	}
}
@media screen and (max-width: 768px){
	.ttl_gaiyo{
		font-size: 4.6vw;	
	}
}
.cRed{
	color: #D24146;
}
.fs90p{
	font-size: 90%;
}
.fs110p{
	font-size: 110%;
}
.fs120p{
	font-size: 120%;
}
.fs130p{
	font-size: 130%;
}
.fs140p{
	font-size: 140%;
}
.fs150p{
	font-size: 150%;
}

@media screen and (min-width:768px){	
	dl.gaiyo{
		/*border: 1px solid #9D9B8F;*/
		border-top: 0;
		line-height: 1.5;
		overflow: hidden;
		max-width:960px;
		
		background: #F0F0F0;
	}
	dl.gaiyo:nth-of-type(2), dl.gaiyo:nth-of-type(4){
		margin-top: 10px;
	}
	dl.gaiyo dt{
		float: left;
		width: 25%;
		padding: 10px 0 10px 10px;
		/*border-top: 1px solid #9D9B8F;*/
		font-weight: bold;
		text-align: center;
	}
	dl.gaiyo dd{
		margin-left: 25%;
		padding: 10px;
		/*border-top: 1px solid #9D9B8F;
		border-left: 1px solid #9D9B8F;*/
		background-color: #fff;
		text-align: left;
	}
}
@media screen and (max-width:767px){	
	dl.gaiyo{
		text-align: left;
		line-height: 1.5;
		max-width:100%;
	}
	dl.gaiyo dt{
		padding: 10px;
		font-weight: bold;
		background-color: #F0F0F0;
		line-height: 1.4;
		float: none;
	}
	dl.gaiyo dd{
		padding: 10px ;
		background-color: #fff;
		/*border-bottom:1px solid #000;*/
		margin-bottom:3px;
		width: 100%;
		margin-left: 0;
	}
}
.gaiyo_subTitle{
	font-size: 1.6rem;
	font-weight: bold;
	text-align: left;
}
.gaiyo_subTitle:nth-of-type(n+2){
		margin-top: 20px;
}
.gaiyo_subTitle:before{
	content: "●";
	color: #1b7ec2;
	top: 1px;
	left: 0;
}
.line-height3{
	line-height: 3;
}
	.text_gaiyou{
		text-align: left;
		font-size: 14px;
		font-weight: normal;
	}
	.gaiyou_ann{
		border: 1px solid #000;
		padding: 20px 15px;
		margin-top: 20px;
		text-align: left;
		font-size: 14px;
		line-height: 1.8;
	}