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

/* メイン */
.main_naka {
	margin: 0 auto;
	max-width: 910px;
	padding: 20px;
	background: #fff;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.22);
	overflow: hidden;
	margin-bottom: 15px;
}

.sideleft {
	width: 690px;
	float: left;
	overflow: hidden;
}

.sideright {
	width: 192px;
	float: right;
	text-align: right;
}

.sidemain {
	width: 100%;
}

.sidemenu {
	display: none;
}

.menu_bottun {
	width: 180px;
	padding: 6px;
	text-align: left;
	background-color: #3E66B5;
	font-weight: bold;
	font-size: 16px;
	margin: 0 auto 10px auto;
}
.menu_bottun a {
	color: #fff;
	text-decoration: none;
}
.menu_bottun:hover {
	background-color: #6088D7;
	text-decoration: underline;
	transition: .4s;
}


.menu_bottun2 {
	display: inline-block;
	width: 100%;
	padding: 8px 10px;
	background-color: #3E66B5;
	text-align: left;
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 6px;
	margin-right: 5px;
}
.menu_bottun2 a {
	color: #fff;
	text-decoration: none;
}
.menu_bottun2:hover {
	background-color: #6088D7;
	text-decoration: underline;
	transition: .4s;
}

.menu_bottun3 {
	width: 230px;
	padding: 8px;
	text-align: center;
	background-color: #E27B03;
	font-weight: bold;
	font-size: 16px;
}
.menu_bottun3 a {
	color: #fff;
	text-decoration: none;
}
.menu_bottun3:hover {
	background-color: #F4BA5A;
	text-decoration: underline;
	transition: .4s;
}


.subtitle01 {
	font-size: 20px;
	font-weight: bold;
	color: #364e96;/*文字色*/
	padding: 0.5em 0;/*上下の余白*/
	border-top: solid 3px #364e96;/*上線*/
	border-bottom: solid 3px #364e96;/*下線*/
	margin-bottom: 15px;
	background: #EBF4FF;
}

.subtitle_english {
	font-size: 20px;
	font-weight: bold;
	color: #fff;/*文字色*/
	padding: 0.7em 0 0.7em 0.3em;/*上下の余白*/
	margin-bottom: 15px;
	background: #FF9E76;
}

.textbox {
	width: auto;
	font-size: 98%;
	line-height: 1.8em ;
	margin-bottom: 25px;
}
.textbox_shimoda {
	width: auto;
	font-size: 85%;
	line-height: 1.4em ;
	margin-bottom: 25px;
}
.textbox_shimoda2 {
	width: auto;
	padding-left: 40px;
	padding-right: 50px;
	font-size: 100%;
	line-height: 1.5em ;
	margin-bottom: 25px;
}

.imgbox_left {
	float: left;
	margin-right: 8px;
	margin-bottom: 8px;
}

.statement_title {
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 8px;
	padding: 5px;
	color: #2D4078;
	background: #DFE8F8;
}
.statement_title2 {
	font-size: 14px;
	color: #275696;
	padding-top: 3px;
	padding-bottom: 3px;
}

.text_red {
	color: red;
}

.text_blue {
	color: #104691;
}

/* パンくずリスト */
.bread {
	margin-bottom: 14px;
	color: #506FAD;
	font-size: 14px;
}


p.engbreak {width: 100%;
overflow-wrap: break-word; 
}

.engbreak2 {width: 100%;
overflow-wrap: break-word; 
}

.booksleft {
	float: right;
	margin-left: 5px;
	margin-bottom: 5px;
}

.scroll-wrap{
    overflow: auto;
  white-space: nowrap;
  }

.icon_list {
	color: #FFC58C;
}
.icon_list2 {
	color: #254C9A;
}

.books_img {
	display: inline-block;
	background-color: #fff;
	border: 1px solid #CECECE;
	padding: 12px;
}

.books_box {
	border: 1px solid #CECECE;
	padding: 12px;
}
.books_box_title {
	line-height: 1.6;
	margin-bottom: 5px;
}
@media screen and ( min-width:769px ){
	.books_box_main {
		display: flex;
		justify-content: space-between;
	}
	.books_box_main .books_box:nth-of-type(2){
		margin-left: 1em;
		margin-right: 1em;
	}
	.books_box {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column; 
	}
	.books_box_title {
		flex-grow: 1;
		display: flex;
		justify-content: center;
		align-items: center;
	}
}
.strong {
    -webkit-text-emphasis: filled circle;
   text-emphasis: filled circle;
}

.movie {
	width: 80%;
  aspect-ratio: 16 / 9;
	padding-top: 10px;
	padding-bottom: 10px;
}
.movie iframe {
	width: 100%;
  height: 100%;
}


/*モーダルを開くボタン*/
.modal-open{
    padding: 8px 12px;
	font-weight: bold;
	color: #fff;
	background: #11489F;
	cursor: pointer;
	display: table;
	margin-top: 15px;
	margin-bottom: 15px;
	margin-left: 12px;
}
.modal-open:hover {
	background-color: #6088D7;
	transition: .4s;
}

/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
    box-sizing: border-box;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
	opacity: 1;
	visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 500px;
	width: 90%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: -40px;
	right: -40px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
	background: #fff;
	text-align: left;
	padding: 30px;
}


/* ウィンドウ幅が0?768pxの場合に適用するCSS */
@media screen and ( max-width:768px )
{
	
	.main_naka {
	margin-right: 8px;
	margin-left:  8px;
	width: auto;
	padding: 24px;
	background: #fff;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.22);
	}
	
	.sideleft {
		width: auto;
		float: none;
	}

	.sideright {
		display: none;
	}
	
	.sidemenu {
		display: block;
		width: auto;
		text-align: center;
		padding-top: 10px;
		padding-bottom: 25px;
	}
	
	.sidemenu a {
		text-decoration:none;
	    color: #fff;
	}
	.sidemenu a:hover {
		text-decoration: underline;
	    color: #fff;
	}
	
	.imgbox_left {
		float: none;
		margin-right: 6px;
		margin-bottom: 8px;
		max-width: 100% ;
		height: auto ;
	}
	
	.booksleft {
	float: none;
	margin: 0 auto;
	}
	
	.scroll-wrap{
    overflow: auto;
  white-space: nowrap;
  }
	
	.books_box {
/*	float: none;*/
	max-width: 220px;
	margin-bottom: 10px;
	}
	
	.textbox_shimoda2 {
	width: auto;
	padding-left: 0px;
	padding-right: 0px;
	font-size: 100%;
	line-height: 1.5em ;
	margin-bottom: 25px;
	}

}

/* 2023.5追加 */
.margin_top_no{
	margin-top: 0 !important;
}
.margin_top_05{
	margin-top: .5em !important;
}
.margin_top_1{
	margin-top: 1em !important;
}
.margin_top_2{
	margin-top: 2em !important;
}
.margin_top_3{
	margin-top: 3em !important;
}
.margin_top_4{
	margin-top: 4em !important;
}
.margin_bottom_no{
	margin-bottom: 0 !important;
}
.margin_bottom_05{
	margin-bottom: .5em !important;
}
.margin_bottom_1{
	margin-bottom: 1em !important;
}
.margin_bottom_2{
	margin-bottom: 2em !important;
}
.margin_bottom_3{
	margin-bottom: 3em !important;
}
.margin_bottom_4{
	margin-bottom: 4em !important;
}

.padding_right_1{
	padding-right: 1em !important;
}
.padding_left_1{
	padding-left: 1em !important;
}
.padding_left_2{
	padding-left: 2em !important;
}
.padding_left_3{
	padding-left: 3em !important;
}

.text_left{
	text-align: left;
}
.text_right{
	text-align: right;
}
.text_center{
	text-align: center;
}

.ol{
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-type: none !important;
	counter-reset: olnumber;
}
.ol > li,
.ol > .ol_item{
	position: relative;
	margin-top: 2em;
	padding-left: 1em;
}
.ol > li::before,
.ol > .ol_item::before{
	position: absolute;
	top: 0;
	left: 0;
	counter-increment: olnumber;
	content: counter(olnumber);
}
.ul > li{
	list-style-type: disc;
}

.list_paren{
	margin: 0;
	padding: 0;
	list-style: none;
	list-style-type: none !important;
	counter-reset: parennumber;
}
.list_paren > li{
	position: relative;
	margin-top: 1em;
	padding-left: 1.5em;
}
.list_paren > li::before{
	position: absolute;
	top: 0;
	left: 0;
	counter-increment: parennumber;
	content: "(" counter(parennumber) ")";
}

.list_circle{
	padding-left: 1.5em !important;
}
.list_circle,
.list_circle li{
	list-style: none;
}
.list_circle li{
	position: relative;
	display: block;
}
.list_circle li::before{
	position: absolute;
	left: -1.5em;
}
.list_circle li:first-of-type::before{
	content: "\2460";
}
.list_circle li:nth-of-type(2)::before{
	content: "\2461";
}
.list_circle li:nth-of-type(3)::before{
	content: "\2462";
}
.list_circle li:nth-of-type(4)::before{
	content: "\2463";
}
.list_circle li:nth-of-type(5)::before{
	content: "\2464";
}
.list_circle li:nth-of-type(6)::before{
	content: "\2465";
}
.list_circle li:nth-of-type(7)::before{
	content: "\2466";
}
.list_circle li:nth-of-type(8)::before{
	content: "\2467";
}
.list_circle li:nth-of-type(9)::before{
	content: "\2468";
}
.list_circle li:nth-of-type(10)::before{
	content: "\2469";
}

.text_marker{
	background-image: linear-gradient(transparent 50%, #FFE5CC 0);
}

/* お知らせ */
.new_list{
	margin: 0;
	padding: 0;
	line-height: 1.5;
}
.new_list,
.new_list_item{
	list-style: none;
}
.new_list_item{
	padding: 8px 0;
	border-bottom: 1px dashed #bbb;
}
.new_list_item > p,
.new_list_item_text > p{
	margin: 0;
}
.new_list_item_text > p:nth-of-type(n+2){
	margin-top: 1.5em;
}
.new_list_item_text{
	position: relative;
	padding-left: 19px;
}
.list_item_text{
	position: relative;
	padding-left: 14px;
}
.new_list_item_text::before{
	position: absolute;
	top: 2px;
	left: 0;
	content: url(../images/news_icon.png);
}
.list_item_text::before{
	position: absolute;
	top: calc(.9em - 3px);
	left: 1px;
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 4px;
	background-color: #FFC58C;
}
.list_item2::before{
	background-color: #254C9A;
}
.new_list_item_text::after,
.list_item_text::after{
	content: "";
	display: block;
	clear: both;
}

/* 検索リスト */
.list_table{
	width: 100%;
	background-color: #fff;
	border-top: 1px solid #D3D3D3;
	border-left: 1px solid #D3D3D3;
	border-right: 1px solid #D3D3D3;
}
.list_table tr{
	border-bottom: 1px solid #D3D3D3;
}
.list_table td{
	vertical-align: top;
	border: none;
	border-bottom: 1px solid #D3D3D3;
}
.list_table td::after{
	content: "";
	display: block;
	clear: both;
}
.list_table .table_thumbnail{
	float: right;
	margin-left: 1em;
	max-width: 40%;
}
/* スケジュール・イベント */
.content_box{
	padding: 5px 5px 1em;
	border: 1px solid #D3D3D3;
}
.content_box_wrap.date .content_box,
.content_box_wrap.statement .content_box,
.content_box_wrap.book .content_box{
	padding: 5px;
}
.content_box_wrap .content_box:nth-of-type(n+2){
	border-top: none;
}
.content_box::after{
	content: "";
	display: block;
	clear: both;
}
.content_box_title{
	font-weight: bold;
	font-size: 16px;
	margin-top: 0;
	margin-bottom: 8px;
	padding-left: 5px;
	padding-right: 5px;
	color: #364e96;
	background: #EBF4FF;
}
.content_box p{
	margin: 0;
}
.content_box p:nth-of-type(n+2){
	margin-top: 1.5em;
}
.content_box_img_right{
	position: relative;
	float: right;
	margin: 0 0 10px 10px;
	max-width: 40%;
	z-index: 1;
}
.two_column_img_left{
	flex: 0 0 auto;
	margin-right: 10px;
	max-width: 30%;
}
.content_box_img_right img,
.two_column_img_left img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
.two_column{
	display: flex;
}

.font_b{
	font-weight: bold;
}
.font_n{
	font-weight: normal;
}
.event231111_table{
    margin-top: 1.5em;
}
.event231111_table td{
	border: none;
	padding: 0;
	vertical-align: top;
}

.event_table td{
	border: none;
	padding: 0;
	vertical-align: top;
}
@media screen and ( max-width:768px ){
	.event_table tr > td:first-child{
		display: inline-block;
	}
	.event_table tr > td:nth-child(2){
		display: inline-block;
	}
	.event_table tr > td:last-child{
		display: block;
		margin-left: 1.5em;
	}
}

.table_border_none td{
	border: none;
	padding: 0;
	vertical-align: top;
	max-width: calc(100% - 1em);
}
@media screen and ( max-width:768px ){
	.table_border_none td{
		display: block;
		width: 100%;
	}
	.table_border_none td:nth-of-type(n+2){
		padding-left: 1em;
	}
}

.event231111_table_blue_wrap{
	overflow-x: auto;
}
.event231111_table_blue{
	min-width: 690px;
}
.table_blue th,
.table_blue td{
	padding: .5em .2em;
}
.table_blue th{
	font-weight: 700;
	color: #fff;
	background-color: #4472c4;
}
.table_blue tbody > tr{
	background-color: #cfd5ea;
}
.table_blue tbody > tr:nth-child(odd){
	background-color: #e9ebf5;
}

.left_yajirushi{
	position: relative;
	padding-left: 1.5em;
}
.left_yajirushi::before{
	position: absolute;
	top: 0;
	left: 0;
	content: "\2192";
}

li.top_border{
	position: relative;
	margin-top: 1em;
}
li.top_border::before{
	position: absolute;
	top: -.5em;
	left: -20px;
	content: "";
	width: calc(100% + 20px);
	height: 1px;
	background-color: #000;
}

.break_all{
	word-break: break-all;
}
.break_all_anchor_wrap a{
	word-break: break-all;
}
.text_justify{
	text-align: justify;
}
@media print, screen and (min-width: 768px){
	.text_justify_pc{
		text-align: justify;
	}
}

.english_new_item{
	position: relative;
	margin-left: 17px;
	margin-bottom: 1em;
	padding: 2px;
}
.english_new_item::before{
	position: absolute;
	top: calc(1.1em - 4px);
	left: -14px;
	content: "";
	width: 7px;
	height: 7px;
	background-color: #000;
}
.english_new_item::after{
	content: "";
	display: block;
	clear: both;
}

.strong_fs p strong{
	font-size: .97em;
}

.anchor_button{
	margin-top: .2em;
	display: inline-block;
	padding: .2em 1em;
	text-decoration: none;
	font-weight: bold;
	color: #fff;
	background-color: #13B5B1;
	border-radius: 1px;
	transition: opacity .3s;
}
.anchor_button:hover{
	color: #fff;
	opacity: .6;
}

/* 協会の会則 */
.jalana05_table tr:nth-last-of-type(n+2) td:first-of-type{
	width: 10em;
	font-weight: 700;
	vertical-align: top;
}
@media print, screen and (min-width: 768px){
	.jalana05_table tr:nth-last-of-type(n+2) td{
		padding-top: .5em;
		padding-bottom: .5em;
		border-bottom: 1px solid #eee;
	}
}
@media screen and (max-width: 767px){
	.jalana05_table td{
		display: block;
		width: 100%;
	}
	.jalana05_table tr:nth-last-of-type(n+2) td:nth-of-type(2){
		padding-left: 1em;
		width: calc(100% - 1em);
	}
}
