﻿@charset "UTF-8";
/*
 * ==========================================================================
 *
 * ベースレイアウトCSS
 *
 * ==========================================================================
 */
/**
 * ---------------------------------------------------
 * Web font setting
 * ---------------------------------------------------
 */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/**
 * ---------------------------------------------------
 * reset
 * ---------------------------------------------------
 */
* {
	margin : 0;
	padding : 0;	
}
article, aside, details, figcaption, figure,
footer, header, hgroup, nav, section, summary {
	display: block;
}
/**
 * ---------------------------------------------------
 * img
 * ---------------------------------------------------
 */
img  {
	max-width : 100%;
	height : auto;
	width /***/:auto;
-ms-interpolation-mode: bicubic; 
}
/**
 * ---------------------------------------------------
 * default
 * ---------------------------------------------------
 */
h1, h2, h3, h4, h5, h6, caption {
	font-weight: normal;
	font-size: 100%;
}

a { outline: none; }

address { font-style: normal; }

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption { text-align: left; }

fieldset { border: none; }

legend { display:none; }

input[type=radio],
input[type=checkbox],
select {
	vertical-align: middle;
}
*, *::before, *::after {
	-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		 -o-box-sizing: border-box;
			box-sizing: border-box;
}
/**
 * ---------------------------------------------------
 * link
 * ---------------------------------------------------
 */
a {
	/*color: #231815;*/
	color: #142E60;
	text-decoration:underline;
}
a:link {
	color: #142E60;
	text-decoration:underline;
}

a:visited {
	color: #142E60;
	text-decoration:underline;
}

a:hover {
	color: #231815;
	text-decoration: underline;
}

a:active {
	color: #231815;
	text-decoration: none;
}
/**
 * ---------------------------------------------------
 * html
 * ---------------------------------------------------
 */
html {
	font-size: 62.5%;
}
/**
 * ---------------------------------------------------
 * body
 * ---------------------------------------------------
 */
body {
  color: #fff;
	line-height: 1.7;
	font-size: 1.6rem;
  font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt";
	font-weight: 400;
	width: 100%;
  background: linear-gradient(360deg,rgba(8, 14, 98, 1) 40%, rgba(13, 87, 160, 1) 75%, rgba(8, 14, 98, 1) 100%);
  /*background: #080e62;*/
	position: relative;
	min-width: 1140px;
}
/**
 * ---------------------------------------------------
 * wrapper
 * ---------------------------------------------------
 */
#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
  padding-bottom: 40%;
	background: url("../images/bg_pc.jpg") bottom/contain no-repeat;
}
/**
 * ---------------------------------------------------
 * header
 * ---------------------------------------------------
 */
header {
	position:absolute;
	width: 100%;
}

	header p{
		line-height:1;
	}

#header-logo img {
	width : 300px;
	margin:0 0 0 20px;
}
#bp-logo {
	width:100px;
	margin:5px 10px;
}

#header-area {
	width : 100%;
	margin-left : auto;
	margin-right : auto;
	padding : 15px 0;
	display:flex;
	justify-content: space-between;
}

/**
 * ---------------------------------------------------
 * visual
 * ---------------------------------------------------
 */ 
#visual {
	text-align:center;
	}

.visual-inner {
	padding:0 0 0;
}
.visual-logo {
	width: 160px;
	margin: 0 auto 50px;
  background: #fff;
  padding: 20px;
  border-radius: 0 0 10px 10px;
  filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.5)); 
}

.visual-title {
  color: #fff;
	font-size:2.5rem;
	font-weight: bold;
	line-height:1.6;
	margin-bottom:10px;
}

.visual-theme {
  width: 600px;
  margin: 0 auto;
  filter: drop-shadow(0px 3px 10px rgba(255, 255, 255, 0.5)); 
}

.guestProfInner {
	width: 980px;
	margin: 80px auto 0;
}

.guestProfBox {
}
.guestProfTitle {
  font-size: 2rem;
	margin: 0 0 20px 0;
	font-weight: bold;
  text-align: center;
}
.guestProfRead {
	font-size: 1.2rem;
	margin: 0 0 10px 0;
	font-weight: bold;
	}


/**
 * ---------------------------------------------------
 * content
 * ---------------------------------------------------
 */ 
 
.inner {
	width:1100px;
  background: #fff;
  color: #28309b;
  padding: 50px;
	margin:100px auto 0;
  border-radius: 10px;
}


/*
一括色変更
*/

.title{
	background : #a6e189;
}

.bg01 {
	background : #015eac;
	color : #ffffff;
}

.bg02 {
	background : #ecffe2;	
}

.icon {
	background : #005f98;
	color : #ffffff;
	letter-spacing : 2px;
	display:inline-block;
	padding : 5px 10px 4px;
	font-size : 105%;
}


/* manarea
-------------------------------------------------------*/
.h2title {
    position: relative;
	font-size:160%;
	padding:0 0 20px 0;
	margin:70px 0 30px 0;
    line-height: 1.3;
    border-bottom: 1px solid #003a79;
}
	.h2title:before {
		position: absolute;
		bottom: -1px;
		left: 0;
		content: "";
		width: 80px;
		height: 1px;
		background-color: #003a79;
	}


.h3title {
	font-size : 120%;
	font-weight:bold;
	color:#015eac;
	line-height : 1.6;
	margin:30px 0 10px 0;
}


.h4title {
	font-size : 110%;
	line-height : 1.8;
	color : #015eac;
	padding-bottom : 10px;
	border-bottom : 2px solid #999;
	position : relative;
}


.h4title:after {
	content : "";
	position : absolute;
	bottom : -2px;
	left : 0;
	width : 40px;
	border-bottom : 2px solid #005f98;	
}

p {
	line-height : 1.8;	
}

th .bg01 {
	text-align : center;
	padding : 5px 0;
	width : 6em;
	font-size : 100%;
	font-weight : bold;
}

.btnWrapper {
  background: #f5f6ff;
  padding: 30px;
  text-align: center;
  border-radius: 10px;
}

.btnWrapperInner {
  display: grid;
  gap: 20px;
  grid-template-columns:1fr 1fr;
}

.btnWrapperTitle {
  font-size: 2rem;
  margin: 0 auto 30px;
}

.btn {
  text-align: center;
}

.btn a {
  width : 100%;
  font-size: 2.3rem;
  margin: 0 auto;
	display : block;
	padding : 20px 0;
	font-weight:700;
	text-align:center;
	text-decoration:none;
	background : #f7cf5f;
	color : #080e62;
	border-radius : 5px;
}

.btn a.online {
  background: #5ed8f3;
}

.btnIcn {
  color: #fff;
  display: inline-block;
  background: #080e62;
  font-size: 1.4rem;
  line-height: 1;
  padding: 10px;
  border-radius: 5px;
}


/**
 * ---------------------------------------------------
 * topInfoTable
 * ---------------------------------------------------
 */

.topInfoTable {
}

.topInfoTable th,td {
	padding:10px 0;
}

.topInfoTable th {
	font-weight:700;
	padding-right:20px;
	line-height:1;
}

.topInfoTable th .blockTitle {
  border: solid 3px #fff100;
  background: #fff;
  border-radius: 4px;
	color:#6463d5;
	width:120px;
	display:block;
	padding:10px 0;
}
/**
 * ---------------------------------------------------
 * topPdfInfo
 * ---------------------------------------------------
 */
.topPdfInfo {
	background:#f4f9f0;
	padding:30px 0 40px;
}

.topPdfInfoTitle {
	text-align:center;
	font-size:110%;
	margin:0 0 20px 0;
}

/**
 * ---------------------------------------------------
 * プログラム
 * ---------------------------------------------------
 */
 
.programDl {
  display:flex;
  justify-content: space-between;
  margin: 0 0 20px 0;
}
.programDl dt{
  font-size: 1.7rem;
  width: 13%;
  font-weight:bold;
  color:#6463d5;
  padding:5px 0;
}
.programDl dd{
  margin: 0;
  width: 86%;
  padding:2px 0;
}
.talkPhoto {
	width: 22%;
}
.talkText {
	width: 75%;
}

.openingPlof {
	background: #f5f6ff;
	padding: 40px;
	margin: 20px 0 ;
  display: flex;
  justify-content: space-between;
}
.openingPlofTitle {
  font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 15px;
}
.openingPlofPhoto {
  width: 30%;
  margin-right: 30px;
}
.openingPlofInfo {
  width: 65%;
}

.otherEventWrapper {
  background: #f5f6ff;
  padding: 30px;
  margin: 30px 0 0 0;
}
.otherEventTitle {
  font-size: 2rem;
  font-weight: 700;
}

.otherEventWrapper.meeting {
  background: #dcf0f7;
}


.showBox {
  background: #fff;
  padding: 20px;
  margin: 20px 0 0 0;
  display: flex;
}
.showBoxTitle {
  font-size: 1.8rem;
  font-weight: 700;
  margin: 0 30px 0 0;
}


/**
 * ---------------------------------------------------
 * footer
 * ---------------------------------------------------
 */ 
#footer {
	background : #666666;
	text-align:center;
	color:#ffffff;
}
#footer-inner {
	width:1140px;
	margin:0 auto;
	padding:20px;
}
	

.tel-link a {
	color:#070303;
	text-decoration:none;
}


.pc-none {
	display : none;
}
/**
 * --------------------------------------------------------------------------
 * flex
 * --------------------------------------------------------------------------
 */
.flex,
.flexPc {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.jstBetween {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.jstCenter {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.jstAround {
	-webkit-box-pack: space-around;
	    -ms-flex-pack: space-around;
	        justify-content: space-around;
}
/* youtube
-------------------------------------------------------------------- */
.youtubeEmbed {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtubeEmbed iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
/**
 ****************************************************
 *
 * screens smaller than 640
 *
 ****************************************************
 */
@media only screen and (max-width: 640px) {
/**
 * ---------------------------------------------------
 * body
 * ---------------------------------------------------
 */
body {
		min-width : 320px;
  font-size: 1.4rem;
	}
  
#wrapper {
	background: url("../images/bg_sp.jpg") bottom/contain no-repeat;
  padding-bottom: 40%;
  
	}
/**
 * ---------------------------------------------------
 * header
 * ---------------------------------------------------
 */
#header-area {
	padding : 5px 0;	
}
#header-logo img {
	width : 120px;
	margin:10px;	
}
#header-area , #wrapper {
	width : 100%;	
}

#bp-logo {
	width:100px;
	margin:5px 10px;
}
/**
 * ---------------------------------------------------
 * visual
 * ---------------------------------------------------
 */ 
#visual {
	}

.visual-inner {
	width:95%;
	margin:0 auto;
	padding:0 0 20px;
}
  
.visual-logo {
	width: 80px;
	margin: 0 auto 30px;
  padding: 10px;
}

.visual-title {
	font-size:1.4rem;
	font-weight:bold;
	line-height:1.6;
	margin-bottom:10px;
}

.visual-theme {
  width: 70%;
}
	
.guestProfInner {
	width: 90%;
	margin: 20px auto 0;
}
.guestProfBox {
}
.guestProfTitle {
  font-size: 1.6rem;
	margin: 0 0 10px 0;
	font-weight: bold;
}

/**
 * ---------------------------------------------------
 * content
 * ---------------------------------------------------
 */ 
	.inner {
		width:95%;
		padding:5%;
    margin: 30px auto 0;
	}

	.ml25 , .ml50 , .ml75 ,.mlr20 , .mlr25 {
		margin-left: 0!important;
		margin-right : 0!important;
	}
	
.h2title {
	font-size:120%;
	padding:0 0 10px 0;
	margin:40px 0 20px 0;
}
	.h2title:before {
		position: absolute;
		bottom: -1px;
		left: 0;
		content: "";
		width: 80px;
		height: 1px;
	}
	
	.h3title {
		font-size : 110%;
		margin:20px 0 5px 0;
	}
	.h4title {
		font-size : 105%;
	}
	
	.fl , fr {
		float : none;
		width : auto;
	}
	
	img {
		width : 100%;
	}

	.visual-inner .txt h1 {
	font-size : 130%;
	letter-spacing : 1px;
	}
	
.btnWrapper {
  padding: 20px;
}

.btnWrapperInner {
  display: grid;
  gap: 20px;
  grid-template-columns:1fr;
}

.btnWrapperTitle {
  font-size: 1.6rem;
  margin: 0 auto 20px;
}

.btn a {
  font-size: 1.8rem;
	padding : 10px 0;
}

.btnIcn {
  font-size: 1.3rem;
  padding: 8px 15px;
  border-radius: 5px;
  margin-bottom: 5px;
}
	

/* 地図 */

.place {
	display : block;

}

.place > div:first-child {
	width : 100%;	
}

.place > div:last-child {
	width : 100%;
	margin-top : 15px;
	text-align:center;
}

.day-txt {
	font-size : 120%;	
}

.place-txt {
	font-size : 110%;	
}

/* スマホの時は非表示 */

.sp-none {
	display : none;	
}
.pc-none {
	display : block;
}

/* tableのはみ出した分をスライドバーを出す */

.table-wrapper {
	width: 100%;
	overflow-y: hidden;
	overflow-x: auto;
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-overflow-scrolling: touch;	
}
/**
 * ---------------------------------------------------
 * topInfoTable
 * ---------------------------------------------------
 */

.topInfoTable {
	margin:0 0 20px 0;
}
.topInfoTable th {
	padding-right:10px;
}

.topInfoTable th .blockTitle {
	width:76px;
  border: solid 1px #fff100;
	padding:5px 0;
}
/**
 * ---------------------------------------------------
 * topPdfInfo
 * ---------------------------------------------------
 */
.topPdfInfo {
	padding:20px 0 30px;
}

.topPdfInfoTitle {
	font-size:110%;
	margin:0 0 20px 0;
}

/**
 * ---------------------------------------------------
 * プログラム
 * ---------------------------------------------------
 */
 
.programDl {
	display:inherit;
}
.programDl dt{
  font-size: 1.4rem;
	width: auto;
	padding:0;
}
.programDl dd{
	width: auto;
	padding:0 0 10px 0;
}
.talkPhoto {
	width: 50%;
	margin: 0 auto;
}
.talkText {
	width: auto;
	margin: 20px 0 0;
}
.openingPlof {
	padding: 20px;
	margin: 10px 0 10px 0;
  display: inherit;
}
.openingPlofTitle {
  font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 10px;
}
.openingPlofPhoto {
  width: 70%;
  margin: 0 auto 20px;
}
.openingPlofInfo {
  width: auto;
}
.otherEventWrapper {
  padding: 20px;
  margin: 20px 0 0 0;
}
.otherEventTitle {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 10px;
}
.showBox {
  padding: 15px;
  display: inherit;
}
.showBoxTitle {
  font-size: 1.6rem;
  margin: 0 0 5px 0;
}
/**
 * ---------------------------------------------------
 * footer
 * ---------------------------------------------------
 */ 
#footer {
}
#footer-inner {
	width:95%;
	padding:10px 0;
}
/**
 * --------------------------------------------------------------------------
 * flex
 * --------------------------------------------------------------------------
 */
.flexPc {
	display: inherit;
} 
	
}