@charset "utf-8";

#contents {
	max-width: 1080px;
	min-height: 400px;
	margin: 10px auto 50px auto;
}

.under {
	text-align: center;
	font-size: 2rem;
}

@media screen and (max-width:1080px){
	#contents {
		width: 94%;
		margin: 0 auto 30px auto;
	}
}
@media screen and (max-width:768px){
	#contents {
		width: 100%;
		margin: 0 0 30px 0;
		padding: 0 20px;
	}

    .under {
        text-align: center;
        font-size: 1.6rem;
    }
}


/***** タイトル *****/
h2.ttl {
	color: #ffffff;
	margin-bottom: 25px;
	padding: 10px 0;
	font-size: 2.6rem;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.04em;
	background: #1468b1;
	/*background: #0769bd;*/
	border-radius: 8px;
}

h3.caption {
	color: #1468b1;
	border-bottom: 2px solid #1468b1;
	margin-bottom: 20px;
	padding: 0 0 8px 0;
	font-size: 2.2rem;
	font-weight: 600;
	letter-spacing: 0.02em;
}

h4.sub_caption {
	margin: 20px 0 10px;
	padding-left: 13px;
	font-size: 2rem;
	font-weight: 500;
	border-left: 5px solid;
	border-color: #1468b1;
	letter-spacing: 0.04em;
}


@media screen and (max-width:768px){
	h2.ttl {
		font-size: 1.7rem;
        padding: 7px 0;
		margin-bottom: 15px;
	}

	h3.caption {
		font-size: 1.7rem;
		margin-bottom: 15px;
        padding: 0 0 4px 0;
    }

    h4.sub_caption {
 		font-size: 1.8rem;
   }

}

/***** ボックス *****/
.inner {
	margin-bottom: 50px;
}

#contents .inner:last-child {
	margin-bottom: 0;
}

.inner_item {
	margin-bottom: 30px;
}

.inner .inner_item:last-child {
	margin-bottom: 0;
}

.cont_wrap {
	padding: 30px;
	border-radius: 10px;
	background: #e2eef7;
}

@media screen and (max-width:768px){
    .inner {
        margin-bottom: 7%;
    }
    .inner_item {
        margin-bottom: 5%;
    }
    .cont_wrap {
        padding: 15px;
        border-radius: 10px;
        background: #e2eef7;
    }
}

/***** 画像 *****/
.fig {
	margin: 20px auto;
}

.fig img {
	width: 100%;
}

.large_fig {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.medium_fig {
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}

.half_fig {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}

.small_fig {
	width: 30%;
	margin-left: auto;
	margin-right: auto;
}

.fig_flex01{
	display: flex;
	justify-content: space-between;
	width: 80%;
	margin: 10px auto;
}

.fig_flex01 figure{
	width: 48%;
}

.fig_flex01 img{
	width: 100%;
}

.fig_flex01 figure figcaption{
	text-align: center;
	margin-top: 5px;
}

@media screen and (max-width:768px){
.fig {
	margin: 15px auto;
}

.large_fig {
	width: 100%;
	margin-left: 0;
}
	
.medium_fig {
	width: 100%;
	margin-left: 0;
}
	
.half_fig {
	width: 100%;
	margin-left: 0;
}
	
.small_fig {
	width: 50%;
	margin: 15px auto;
}

.fig_flex01{
	display: block;
	justify-content: center;
	width: 80%;
	margin: 10px auto;
}

.fig_flex01 figure{
	width: 100%;
	margin-bottom: 6%;
}

.fig_flex01 figure:last-child{
	margin-bottom: 0;
}
	
}

/***** 番号 *****/
.number_dl dt {
	width: 1.5em;
	float: left;
	clear: left;
}

.number_dl dd {
	margin-bottom: 5px;
	padding-left: 1.5em;
}

.number_dl dd:last-child {
	margin-bottom: 0;
}

/***** 締め切り延長 *****/
@media screen and (max-width:768px){
.deadline td {
	display: block;
}

.deadline tr:nth-child(2) td:nth-child(1) {
	display: none;
}
}


/***** 企業バナー *****/
.sponsor_bnr {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
}

.sponsor_bnr li{
	margin: 0;
	text-align: center;
}

.sponsor_bnr li img{
	width: 100%;
}

@media screen and (max-width:1100px) {
.sponsor_bnr{
	grid-template-columns: repeat(3, 1fr);
}
}

@media screen and (max-width:768px) {
.sponsor_bnr{
	margin: 4% auto 4% auto;
	gap: 15px;
	grid-template-columns: repeat(2, 1fr);
}
}

/***** メインコピー *****/
.main_copy p{
	color: #222;
	text-align: center;
	font-size: 2.3rem;
	line-height: 1.7em;
	font-weight: 500;
}
@media screen and (max-width:768px) {
.main_copy p{
	font-size: 1.6rem;
	line-height: 1.6em;
	text-align: left;
}
}

/***** 新着情報 *****/
.news{
	margin: 0 auto 70px auto;
	width: 100%;
}

.news .newsTtl {
	color: #1468b1;
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.03em;
	padding-bottom: 1.3%;
	margin: 0 0 25px 0;
	border-bottom: 2px solid #1468b1;
}

.news__inner div{
	width: 100%;
	max-height: 258px;
	overflow-y: scroll;
}

.news__inner dl{
	width: 98%;
	padding: 0 0 15px 0;
	margin: 0 0 15px 0;
	border-bottom: 1px dotted #444;
}

.news__inner dl dt{
	color: #1468b1;
	font-weight: 600;
	margin-bottom: 5px;
}

.news__inner dl dd{
	font-weight: normal;
}

@media screen and (max-width:1000px) {
.news{
	width: 95%;
	max-width: inherit;
	margin-bottom: 4%;
}
	
.news__inner div{
	margin: 0 auto;
	overflow-y: scroll;
}

.news__inner dl{
    display: block;
}
}

@media screen and (max-width:768px) {
.news .newsTtl {
	margin: 0 auto 15px auto;
	font-size: 1.9rem;
	padding-bottom: 2.2%;
}
}

/***** Google Map *****/
.map_wrap {
	display: block;
	margin-top: 30px;
}
.map_wrap iframe {
	width: 100%;
	height: 400px;
}

@media screen and (max-width:1000px) {
    .map_wrap iframe {
        height: 300px;
    }
}


/***** 学会概要 *****/
.outline_chair dl:first-child {
	margin-bottom: 10px;
}
.outline_chair dl dd {
	margin-left: 1em;
}
.outline_flex {
	display: flex;
	justify-content: flex-start;
}
.outline_flex dl:first-child {
	margin-right: 100px;
}
.outline_flex dl dd {
	margin-left: 1em;
}

@media screen and (max-width:1000px) {
    .outline_flex {
        display: block;
    }
    .outline_flex dl:first-child {
        display: block;
        margin-right: 0;
        margin-bottom: 10px;
    }
}



/***** 協賛の皆さまへ *****/
.sponsor_tb {
	max-width: 500px;
	width: 100%;
	margin: 20px 0 25px 0;
}

.sponsor_tb th {
	padding: 5px 15px;
	color: #fff;
	font-weight: 500;
	border: #ddd 1px solid;
	background-color: #1468b1;
	width: 65%;
	text-align: left;
}

.sponsor_tb td {
	padding: 15px;
	border: #ddd 1px solid;
	background-color: #fff;
	width: 35%;
	text-align: center;
}

@media screen and (max-width:768px){
	.sponsor_tb th {
		padding: 5px;
		font-size: 1.4rem;
	}
	.sponsor_tb td {
		padding: 5px;
		font-size: 1.4rem;
	}
	
}



/***** 交通アクセス *****/
.access_tb {
	max-width: 700px;
	width: 100%;
	margin: 20px 0 25px 0;
}

.access_tb th {
	padding: 5px 15px;
	color: #fff;
	font-weight: 500;
	border: #ddd 1px solid;
	background-color: #1468b1;
}

.access_tb td {
	padding: 15px;
	border: #ddd 1px solid;
	background-color: #fff;
}

@media screen and (max-width:768px){
	.access_tb th {
		padding: 5px;
		font-size: 1.4rem;
	}
	.access_tb td {
		padding: 5px;
		font-size: 1.4rem;
	}
	
}
