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

body {
    font-family: Arial, Helvetica, sans-serif;
    background: url(../images/back001.png) center center / cover no-repeat fixed;
	margin: 0;
}

a:hover img {
  opacity: 0.6;
  filter: alpha(opacity=60);
	transition: .3s;
}

a {
	color: #004597;
	text-decoration: underline;
	-webkit-transition: .2s;
	-moz-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
}
a:hover {
	color: #2D5FE8;
	text-decoration: none;
}

hr {
	height: 0;
  margin: 8px 0;
  padding: 0;
  border: 0;
}

hr {
  border-top: 1px dashed #bbb;
}

header{
	display:none;
}

/* トップに戻るボタン */
.pagetop {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 15px;
}


/* 全体の囲み */
.wrapper {
  width: 100%;
}

.all {
	width: 950px;
	margin: 0 auto;
}

/* ヘッダーとヘッダー内部 */
.header {
	width: 928px;
	margin-top: 20px;
	margin-bottom: 8px;
	background-color: #fff;
	padding: 11px;
	overflow: hidden;
}

.header_google {
	width: 600px;
	text-align: right;
	float: right;
	margin-bottom: 8px;
}

.header_rogo {
	float: left;
	margin: 0;
}

.header_menu {
	float: right;
	text-align: right;
}

.header_eng1 {
	display: none;
}


/* 横軸メニュー */
.menu {
	margin: 0 auto;
	width: 950px;
	height: 60px;
	margin-bottom: 8px;
}

.menu_sub {
	display: none;
}

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

.mainimage {
	margin-bottom: 20px;
	text-align: center;
}

/*.main_left {
	width: 365px;
	float: left;
}*/
.main_left_contents{
	font-weight: 700;
	background-color: #fafdfe;
	border: 1px solid #adc0d3;
}
.main_left_contents_title{
	padding: 10px;
	font-size: 18px;
	transition: background .4s;
}
.main_left_contents_title_item{
	padding: 8px 10px;
	transition: background .4s;
}
.main_left_contents_title_icon{
	margin-right: 10px;
}
.main_left_contents_item{
	padding: 8px 10px 8px 38px;
	border-top: 1px solid #adc0d3;
	transition: background .4s;
}
:is(.main_left_contents_title, .main_left_contents_item, .main_left_contents_title_item):has(> a):hover{
	background-color: #819CD0;
}

.main_left_contents_item a:nth-of-type(n+2){
	display: inline-block;
	margin-top: .32em;
}
.main_left_contents_item_list{
	position: relative;
	padding-left: 32px;
}
.main_left_contents_item_list::before{
	position: absolute;
	top: 0;
	left: 15px;
	content: "\30FB";
}



/*.main_left2 {
	display: none;
}*/


/* 縦軸メニュー */
/*.menu2_button {
	padding: 8px 10px;
	font-weight: bold;
	background: #fafdfe;
	transition: .4s;
}
.menu2_button:hover {
	background: #819CD0;
	color: #fff;
}*/

/*.menu3_button {
	padding: 14px;
	font-weight: bold;
	background: #3295B6;
	color: #fff;
	transition: .4s;
}
.menu3_button:hover {
	background: #5DBCDB;
	color: #005274;
}*/

.link {
	text-decoration: none;
	color: #004986;
}
.link:hover {
	color: #fff;
}

/* what's new */
.news_text {
	line-height: 1.5em;
}

.news01 {
	margin-bottom: 30px;
}


/* footer */
.footer {
	width: 100%;
	padding: 20px 0;
	background: #a5b8c6;
}

.footer_main {
	width: 950px;
	margin: 0 auto;
	color: #fff;
	overflow: hidden;
}

.footer_logo {
	float: left;
}

.footer_text {
	float: right;
}

.text_red {
	color: red;
}

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





/* ウィンドウ幅が0～768pxの場合に適用するCSS */
@media screen and ( max-width:768px ){
	header{
	display:block;
}
	
	.all {
	width: auto;
}
	
	.img
{
	max-width: 100% ;		/* 横幅の90% */
	height: auto ;			/* 縦幅を自動調整 */
}
	
	.header {
	margin-right: 8px;
	margin-left:  8px;
	width: auto;
	margin-top: 56px;
	margin-bottom: 10px;
	background-color: #fff;
	padding: 11px;
}
	
	.header_rogo {
	float: none;
}

.header_menu {
	display: none;
}
	
	.header_google {
	width: auto;
	text-align: right;
	margin-bottom: 8px;
}
	
	.header_eng1 {
		display:block;
	text-align: right;
		margin-bottom: 8px;
}
	.header_eng1 .header_menu_button_donate{
		margin-left: 8px;
		transform: translateY(0);
	}

	
	.menu {
		display: none;
	}
	
	.menu_sub {
		display: block;
		margin-bottom: 15px;
	}

	.main {
	margin-right: 8px;
	margin-left:  8px;
	width: auto;
	padding: 27px;
	background: #fff;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.22);
}
	
	.mainimage {
		display: none;
	}
	
/*	.main_left {
		display: none;
	}*/
	
/*	.main_left2 {
		display:block;
		margin-bottom: 30px;
	}*/
	
	.main_right {
		float: none;
		width: auto;
	}
	
	
	.news_text {
	line-height: 1.5em;
		font-size: 18px;
		
}
	
	.link {
	text-decoration: none;
	color: #004986;
/*		font-size: 20px;*/
}
	
	
/* 横軸メニュー　スマホ用 */	
	.square_btn {
    display: inline-block;
	width: 100%;
    padding: 8px 10px;
    text-decoration: none;
	font-size: 20px;
    color: #fff;
    background: #38558e;
    transition: .4s;
	margin-bottom: 6px;
	margin-right: 5px;
}

.square_btn:hover {
    background: #819CD0;
    color: #fff;
}
	
	.footer_main {
		width: auto;
		color: #fff;
		margin-left: 10px;
		margin-right: 10px;
	}
	
	.footer_logo {
	float: none;
}

.footer_text {
	float: none;
}
	
	.flex {
  padding: 0;
  display: flex;
  flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-around;
}
	.main_right_sns{
		margin-top: 2em;
	}

	
}

/* HOME サイドバー */
@media print, screen and ( min-width: 769px ){
	.home_main{
		display: grid;
		column-gap: 31px;
	}
	.home_main .mainimage_join_wrap{
		grid-row: 1 / 2;
		grid-column: 1 / 3;
	}
	.home_main .main_right{
		width: 500px;
		grid-row: 2 / 3;
		grid-column: 2 / 3;
	}
	.home_main .main_left{
		width: 365px;
		grid-row: 2 / 4;
		grid-column: 1 / 2;
	}
	.main_right_sns{
		grid-row: 3 / 4;
		grid-column: 2 / 3;
	}
}

/* 入会案内 */
.mainimage_join_wrap{
	margin-bottom: 20px;
	border: 1px solid #C9C9C9;
	background: url("../images/join_wrap_bg.png") center / cover no-repeat;
}
.mainimage_join_inner{
	line-height: 1.75;
	width: min(90%, 630px);
	margin: 1.5em auto;
	font-size: .98em;
	color: #595959;
}
