
/*====ページ全体
==========================================================*/
body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-family: "メイリオ","Hiragino Kaku Gothic ProN",sans-serif;
}

img {
	border:none;
	margin: 0;
	padding: 0;
	line-height: 0;
	vertical-align: bottom;
	max-width: 100%;
}

.social_buttons {
	margin: 8px auto 0;
	max-width: 1000px;
}

#ContentsArea {
	margin:0;
	padding:0;
	text-align: left;
	width:100%;
}

#header {
/	background-color: #fff;
	width: 100%;
}

a {
	text-decoration: none;
	color:#4AC3E2;
	border:none;
}

a:hover	{
	color:#37AFFF;
	text-decoration:underline;
}


h1 {
	margin:0;
	padding:0;
	line-height:0;
}


h2 { margin:15px 0 0 0;
	color: #003c6e;
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

h2#ttl1,h2#ttl2,h2#ttl3,h2#ttl4,h2#ttl5 {
	font-weight: bold;
	padding: 10px 0;
	line-height: 1.4;
	text-align: left;
	color: #003c6e;
	font-family: YuGothic,/* Mac用 */
	'Yu Gothic', /* Windows用 */
	serif;
	border-bottom: 2px solid #003c6e;
	margin-bottom: 20px;
	margin: 0 25px 0;
}

h2 div {
	text-align: left;
	padding-left: 20px;
}

h2#ttl1 span,h2#ttl2 span,h2#ttl3 span,h2#ttl4 span,h2#ttl5 span {
	padding-right: -15px;
	color: #32DAC8;
}

h2#ttl1W,h2#ttl2W,h2#ttl3W {
	background:url(ttl_bg02.jpg) left top;
	padding: 5px 10px 5px 30px;

}

h2.ttl_con {
	color: #fff;
	font-weight: bold;
	font-size: 15px;
	padding: 2px 0 2px 10px;
	margin-top: 20px;
	font-family: YuGothic,/* Mac用 */
	'Yu Gothic', /* Windows用 */
	serif;
	background-color: #2d5a9b;
	margin-bottom: 15px;
	text-shadow: none;
}

strong{
	font-size: 120%;
}

h2.ttl_conW {
	background-color: #01A982;
	padding: 5px 0 5px 10px;
}

h3 {
	padding: 4px 15px 2px;
	margin: 0 0 10px;
	background-color: #787878;
	color: #fff;
	font-size: 14px;
	border-radius: 50px;
	font-family: YuGothic,/* Mac用 */
	'Yu Gothic', /* Windows用 */
	serif;
}

h4 {
	margin:5px 5px;
	padding:0;
	line-height:0;
}

.pluspc {
	width: 100%;
}
.plussp {
	display: none;
}

/*slide */

@keyframes img_anim {
  0% {transform: translate3d(0,0,0);}
  100% {transform: translate3d(-74%,100%,0);}
}
.keyImages2 {
  width: 100%;
  overflow: hidden;
}
.keyImages2 .image {
  width: 100%;
  max-width: 1044px;
  height: 100%;
  margin-left: auto;
  margin-right: 0;
  position: absolute;
  right: -15%;
  top: 0;
  z-index: 2;
}
.keyImages2 .image img {
  width: 100%;
  animation: img_anim 20s linear infinite;
}
.keyImages2 .image2 {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  transform: translate3d(74%,-100%,0);
}
.keyImages2 h1 {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1400px) {
  .keyImages2 .image {
    width: 74.57%; /* 1044/1400*100% */
  }
}
@media screen and (max-width: 1000px) {
  .keyImages2 .image {
    right: -25%;
    width: 85%;
  }
}


.flex {
  display: flex;
}

#keyIndex {
	position: absolute;
	padding: 0;
	width: 100%;
	height: 100%;
}
#keyImages {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
		z-index: 50;
		.keyBlock {
			margin: 0 0 0 auto;
			width: 35%;
			height: 200%;
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
			-webkit-transform-origin: 100% 40%;
			transform-origin: 100% 40%;
			ul {
				webkit-animation: listDown 20s linear infinite;
				animation: listDown 20s linear infinite;
				flex-direction: column;
				transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 27, 0, 1);
				li {
					-webkit-transform: translateY(50%);
					transform: translateY(50%);
					margin-bottom: 18%;
					div {
						transform: rotate(-45deg);
            width: 45.8*1.5%;
            height: 19.2*1.5%;
            background-color: #ddd;
            align-items: center;
            justify-content: center;
            &.box01 {
              background-color: #fff;
            }
            &.box02 {
              background-color: #fff;
            }
            &.box03 {
              background-color: #fff;
            }
            &.box04 {
              background-color: #fff;
            }
            p {
              font-weight: 600;
            }
					}
				}
			}
		}
}

@keyframes listDown{
	from{
		-webkit-transform:translate3d(0,0,0);
		transform:translate3d(0,0,0);
	}
	
	to{
		-webkit-transform:translate3d(0,50%,0);
		transform:translate3d(0,50%,0)}
}


* {
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
}


/*slide */












p {
	margin:0;
	padding:0 0 10px;
}

.lead {
	margin: 10px 0 10px;
	padding: 0 20px 0px;
	font-size: 120%;
	color: #000;
/	font-weight: bold;
	letter-spacing: 0.1em;
}


dl {
	margin: 0;
	border-bottom: 1px dotted #868686;
}

dt {
	padding-top: 10px;
	font-weight: bold;
	border-top: 1px dotted #868686;
}

dt span {color: #538FA1;}

dd {
	margin-left: 1em;
	line-height: 1.5;
	padding-bottom: 10px;
}

.bdt { border-top: 1px solid #000; }
.header_sp { display: none;}

.related_contents {
	display: flex;
	max-width: 920px;
	margin: 0 auto;
	flex-wrap: wrap;
	justify-content: space-between;

}

.banner { min-height: 240px; }

.wbba { word-break:break-all;}

.cl {
	clear: both;
}
.fl {
	float: left;
}
.fr {
	float: right;
}

.smlTxt {
	font-size: 80%;
/	font-weight: bold;
}

.smlTxt span{
	display: block;
	font-weight: normal;
}

span.ucym {
	font-weight: bold;
	color: #a2030f;
}

span.mtng {
	font-weight: bold;
	color: #003c6e;
}

.mod {color: #777;}


/*====ヘッダイメージ
==========================================================*/


#MainImgArea {
/	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
}
#MainImgArea span{
	margin: 0;
	padding: 0;
}

/*====コンテンツサイズ
==========================================================*/
#MainArea{
	width: 100%;
	margin:0;
	padding: 0;
	font-size:14px;
	color:#444;
}
*html #MainArea{
	width: 100%;
}

#LeftArea{
	padding: 10px 15px 0;
	float:none;
	background-color: #fff;
}

.whitearea {
	background-color: #fff;
	max-width: 1000px;
	margin: 0 auto;
}

.nxt_header {
	max-width: 1000px;
	margin: 0 auto;
}

/*====LeftArea
==========================================================*/

a.alpha:hover {
	opacity: .75; /* Standard: FF gt 1.5, Opera, Safari */
	filter: alpha(opacity=75); /* IE lt 8 */
	-ms-filter: "alpha(opacity=75)"; /* IE 8 */
	-khtml-opacity: .75; /* Safari 1.x */
	-moz-opacity: .75; /* FF lt 1.5, Netscape */
}
/* Page ------------------------------*/

#pag1 {
	background-color: #fff;
	margin-top: 25px;
}

/* 各記事の設定 ------------------------------*/
.Account{
	margin: 0 auto;
	padding: 0 5px 0 5px;
	max-width: 960px;
	font-size: 18px;
	background: #fff;
	line-height: 1.8;
}

.acc {
	margin:30px 25px 10px;
}

.AccountImg {
	margin:0 10px 5px 0;
	padding:0;
	float:left;
}
.acc .sp {
	margin:0 0 10px 0;
	padding:0 0 10px 0;
	font-weight: bold;
	color: #366F82;
	border-bottom: #CCC dashed 1px;
}
.acc .sp2 {
	margin:15px 0;
	padding:15px 0;
	font-weight: bold;
	border-top: #CCC dashed 1px;
	border-bottom: #CCC dashed 1px;
}

/* ContactAreaの設定 ------------------------------*/

#ContactArea {
	margin:0;
	padding:10px;
	font-size:12px;
}

#Contact {
	margin:5px;
	padding:10px 0 0 0;
}

#ContactTxt {
	margin:0 0 0 10px;
	padding:0;
	float:left;
	line-height:1.5em;
}

.contact {
	word-break: break-all;
}

#ContactTxt p{
	margin:0px;
}
#ContactImg {
	margin:0 0 0 0;
	float:right;
}

.logostyle {
	margin-top: 15px;
	margin-right: 30px;
}

/* PageTopの設定 ------------------------------*/
.PageTop {
	margin:10px 0;
	max-width: 940px;
	padding:0;
}

/*====Add
==========================================================*/
.mt20
{
	margin-top: 20px;
}

.mt10
{
	margin-top: 10px;
}


/* margin-top */
.mt1{margin-top: 1px;}
.mt2{margin-top: 2px;}
.mt3{margin-top: 3px;}
.mt4{margin-top: 4px;}
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}
.mt60{margin-top: 60px;}

/* margin-right */
.mr1{margin-right: 1px;}
.mr2{margin-right: 2px;}
.mr3{margin-right: 3px;}
.mr4{margin-right: 4px;}
.mr5{margin-right: 5px;}
.mr10{margin-right: 10px;}
.mr15{margin-right: 15px;}
.mr20{margin-right: 20px;}
.mr30{margin-right: 30px;}

/* margin-bottom */
.mb0{margin-bottom: 0px;}
.mb1{margin-bottom: 1px;}
.mb2{margin-bottom: 2px;}
.mb3{margin-bottom: 3px;}
.mb4{margin-bottom: 4px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}


/* margin-left */
.ml1{margin-left: 1px;}
.ml2{margin-left: 2px;}
.ml3{margin-left: 3px;}
.ml4{margin-left: 4px;}
.ml5{margin-left: 5px;}
.ml10{margin-left: 10px;}
.ml15{margin-left: 15px;}
.ml20{margin-left: 20px;}

/* padding-top */
.pt1{padding-top: 1px;}
.pt2{padding-top: 2px;}
.pt3{padding-top: 3px;}
.pt4{padding-top: 4px;}
.pt5{padding-top: 5px;}
.pt10{padding-top: 10px;}
.pt15{padding-top: 15px;}
.pt20{padding-top: 20px;}

/* padding-right */
.pr1{padding-right: 1px;}
.pr2{padding-right: 2px;}
.pr3{padding-right: 3px;}
.pr4{padding-right: 4px;}
.pr5{padding-right: 5px;}
.pr10{padding-right: 10px;}
.pr15{padding-right: 15px;}
.pr20{padding-right: 20px;}

/* padding-bottom */
.pb0{padding-bottom: 0px;}
.pb1{padding-bottom: 1px;}
.pb2{padding-bottom: 2px;}
.pb3{padding-bottom: 3px;}
.pb4{padding-bottom: 4px;}
.pb5{padding-bottom: 5px;}
.pb10{padding-bottom: 10px;}
.pb15{padding-bottom: 15px;}
.pb20{padding-bottom: 20px;}

/* padding-left */
.pl1{padding-left: 1px;}
.pl2{padding-left: 2px;}
.pl3{padding-left: 3px;}
.pl4{padding-left: 4px;}
.pl5{padding-left: 5px;}
.pl10{padding-left: 10px;}
.pl15{padding-left: 15px;}
.pl20{padding-left: 20px;}
.pl30{padding-left: 30px;}
.pl40{padding-left: 40px;}

/* padding */
.pg1{padding: 1px;}
.pg2{padding: 2px;}
.pg3{padding: 3px;}
.pg4{padding: 4px;}
.pg5{padding: 5px;}
.pg10{padding: 10px;}
.pg15{padding: 15px;}
.pg20{padding: 20px;}
.pg30{padding: 30px;}
.pg40{padding: 40px;}

.line {
	border-bottom: 1px dotted #696969;
}

.kome {font-size: 80%; padding: 5px 10px 0 0;}


.figTtl {
	max-width: 700px;
	margin :0 auto;
	border-top: 4px solid #000;
	border-left: 4px solid #000;
	border-right: 4px solid #000;
}
.figTxt {
	max-width: 680px;
	margin: 0 auto;
	padding: 5px 10px;
	font-size: 80%;
	margin-bottom: 30px;
	border-bottom: 4px solid #000;
	border-left: 4px solid #000;
	border-right: 4px solid #000;
}

.photo1 {
	float: left;
	max-width: 30%;
	margin:0 15px 10px 0px;
}

.photo2 {
	float: right;
	max-width: 30%;
	margin:0 0px 15px 10px;
}


#bookmarkBox {
	float: left;
	width: 300px;
}

br {line-height: 0.8;}

.nam {font-weight: bold;}



.bgW {
	display: block;
	font-size: 90%;
	padding: 4px;
	margin-bottom: 7px;
	border: 1px solid #fff;
	background-color: #00A7BA;
	color: #fff;
}

#backnumber {
	display: block;
	margin-top: 10px!important;
}


.globalFooter {
	background-color: #fff;
	padding: 15px 0!important;
}

.named {
	font-weight: bold;
	color: #ff9900;
}	

.figttl {
	padding: 2px 5px 0;
	font-weight: bold;
	display: block;
	background-color: #dcdcdc;
}
.figcap {
	color: #fff;
	padding: 5px 10px;
	line-height: 1.4;
	font-size: 14.5px;
	display: block;
	background-color: #004390;
	margin-bottom: 15px;
}

.linkcap {
	padding: 5px 2px;
	max-width: 456px;
	font-size: 12px;
	letter-spacing: -0.01em;
	line-height: 1.4;
}

.accS {
	max-width: 900px;
	margin: 0 10px;
}
.sp_nxt_header { display:none; }
.sp { display:none; }
.sp_bio { display:none; }
.spbr { display:none; }

.column {
	margin: 15px 0;
	padding: 10px;
}

.column span {
	padding: 10px;
	display: block;
	background-color: #62ACFF;
	margin-bottom: 15px;
	border-radius: 4px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}

@media screen and (max-width:1000px)
	{
#ContentsArea {
	overflow: hidden;
	}
.Account{
	font-size: 16px;
	line-height: 1.8;
	}

.social_buttons {
	margin-left: 7px;
	padding-bottom: 8px;
	}
h2 {
	margin: 0 5px 0;
	font-size:20px;
}

.pc { display:none; }
.sp { display:inline; }


.photo1 {
	max-width: 35%;
}

.photo2 {
	max-width: 35%;
}


}


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

.lead {
	font-size: 95%;
	}
}

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

.lead {
	}
}


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


h2 {
	letter-spacing: 0em;
	}

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


h2 {
	font-size: 18px;
	letter-spacing: 0em;
}

.pluspc { display:none; }
.plussp { display:inline;
	margin: 0 auto;
	width: 100%;
	text-align: center;
}



#LeftArea {
	padding-top: 0;
	padding-left: 0;
	padding-right: 0;
	width: 97%;
	margin: 0 auto;
	}

h2#ttl1, h2#ttl2, h2#ttl3, h2#ttl4 {
	padding: 5px 10px;
	margin: 0 5px 0;
	}

h2 {
	font-size: 20px;
	}

.lead {
	font-size: 85%;
	}


.acc { 
	margin:10px 0px 10px;
	}

.accS {
	padding: 0;
	margin: 0;
	}

h2.ttl_con {
	font-size: 4vw;
	padding: 7 15px;
	}

.header_pc { display: none;}

.figttl { 
	padding-left: 10px;
	padding-right: 10px;
	}

.header_sp { 
	display: block;
	padding: 8px 0;
	text-align: center;
	}
.photoH {
	max-width: 250px;
	}


.banner {
	min-height: auto;
	margin-bottom: 15px;
	}

.related_contents {
	flex-direction: column;
	align-items: center;
	}

.logostyle {
	margin: 0 auto 0;
	}

}



@media screen and (max-width:450px) {
body {
	background-color: #fff;
}
h2 {
	letter-spacing: 0em;
	font-size: 15px;
	margin: 0 0 0!important;
}

.nxt_header { display:none; }
.sp_nxt_header { display:inline; 
	width: 100%;
	text-align: center;
}

.bdt { display:none; }
.sp_bio { display:inline; 
	width: 100%;
	padding-bottom: 10px;
	font-size: 14PX;
}


.photo1 {
	max-width: 40%;
}

.photo2 {
	max-width: 40%;
}


.photoH {
	max-width: 150px;
}


.bio_l {width: 100%;
	padding: 5px 0px 10px 5px;
}
.bio_r {width: 100%;
	padding: 5px 5px 5px 0px;
}
/br.sp { display: none; }
h2#ttl1, h2#ttl2, h2#ttl3, h2#ttl4, h2.ttl_con {
	border-radius: 0px;
}
h2#ttl1, h2#ttl2, h2#ttl3, h2#ttl4 {
	border-radius: 0px;
}
.acc .sp {
    margin: 0 0 -1px 0;
    padding: 0 0 0 0;
    border-bottom: #CCC dashed 1px;
}
.br-pc { display:none; }

.lead {
	font-size: 70%;
	}
}


.cb{
  clear: both;
}
.biotxt { font-size: 14px; }
}

@media screen and (max-width:400px) {
h2 { font-size: 4.7vw;
	letter-spacing: 0em;
}
h2#ttl1, h2#ttl2, h2#ttl3, h2#ttl4 {
    padding: 12px 0px;
}
#ContactArea,
.linkcap {
    font-size: 4vw;
}

.header_sp img { max-width: 170px; }
.Account {
    font-size: 15px;
    line-height: 1.6;
}
.figttl {
    padding-left: 7px;
    padding-right: 0px;
}
.lead {
	padding: 0 20px 5px;
	}
}


}
@media screen and (max-width:330px) {
.figttl {
    padding-left: 0px;
    padding-right: 0px;
}
.Account {
    font-size: 13px;
    line-height: 1.6;
}

}