body {
  	background:#FFF;
  	font: 18px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
    color: #212121;
	line-height : 1.7;
	text-align: left; 
    -webkit-font-smoothing: antialiased;
    -webkit-overflow-scrolling: touch;
	margin: 0;
}

img {
  border: 0;
}

/* リンク */
a {
    color: #1a237e;
    word-wrap: break-word;
    -webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
    -moz-transition: color 0.1s ease-in, background 0.1s ease-in;
    -ms-transition: color 0.1s ease-in, background 0.1s ease-in;
    -o-transition: color 0.1s ease-in, background 0.1s ease-in;
    transition: color 0.1s ease-in, background 0.1s ease-in;
	cursor: pointer;
	text-decoration:underline;
}

a:hover,
a:focus {
	color: #BFBFBF;
	outline: 0;
	text-decoration: none;
}

h1{
	margin-top:0px;
	margin-bottom:-4px;
	text-align:center;
	background-image:url(images/h1back.jpg);
	background-size:cover;

}

h1 img {
	width: 100%;
	max-width: 800px;
	margin-top:10px;
}

.h2 {
	font-size: 28px;
	line-height: 1.5;
	color:#FFF;
	font-weight:bold;
	margin:-35px 0px 20px 0px;
	padding:15px 10px 20px 30px;
	background:#81D4FA;
	text-align:center;
}

.h2 img{
	vertical-align:bottom;
	margin-right:10px;
}

.article{
	padding-top: 10px;
	padding-bottom: 20px;
	text-align:center;
}

.search{
	margin-top:-30px;
	padding:30px 0 30px 0;
	background:#81D4FA;
}

.paragraph {
    width:93%;
	text-align:left;	
	padding: 0 5px;
	margin: 0 15px 40px 15px;
}

.flex1{
	display:flex;
	margin:20px 0 -20px 0;
}

.photo img{
	margin:-25px 0 0 -75px;
}

.h3Blue{
	font-size: 25px; 
	line-height: 1.5;
	font-weight:bold;
	margin:0 0 0 -30px;
	border-bottom:#1a237e 5px solid;
}

.h3Yellow{
	font-size: 25px; 
	line-height: 1.5;
	font-weight:bold;
	margin:0 0 0 -30px;
	border-bottom:#fcc800 5px solid;
}

.h3Red{
	font-size: 25px; 
	line-height: 1.5;
	font-weight:bold;
	margin:0 0 0 -30px;
	border-bottom:#c82c55 5px solid;
}

p{
	margin:40px 0;
}

.extra{
	color:#1a237e;
	font-size:22px;
	font-weight:bold;
}

.imgCenter{
	text-align:center;
}

@media only screen and ( max-width: 480px )
{
.imgCenter img{
	width:100%;
}
}

@media only screen and ( min-width: 800px )
{
.flex2{
	display:flex;
}

.flex2 p{
	margin-right:20px;
}

}

.hr{
	border-width: 0 0 2px;
  	border-image: linear-gradient(
    90deg,
    hsla(0, 0%, 100%, 0),
    hsla(0, 0%, 70%, 1) 50%,
    hsla(0, 0%, 100%, 0) 100%) 0 0 100%;
  	border-style: solid;
	margin:30px 0;
}

.hrWhite{
	border-width: 0 0 2px;
  	border-image: linear-gradient(
    90deg,
    hsla(0, 0%, 100%, 0),
    hsla(0, 100%, 100%, 1) 50%,
    hsla(0, 0%, 100%, 0) 100%) 0 0 100%;
  	border-style: solid;
	margin:30px 0;
}

/* 各ページタイトル */

.relative {
    position: relative;
}

.relative img {
	max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.absolute {
    position: absolute;
	top: 80px;
	left:40px;
    color: #fff;
	font-size: 30px; 
	line-height: 1.5;
	font-weight:bold;
	text-align:left;
}

.absoluteBottom {
    position: absolute;
	bottom: 80px;
	left:40px;
    color: #fff;
	font-size: 30px; 
	line-height: 1.5;
	font-weight:bold;
	text-align:left;
}

.titleSmall{
	font-weight:bold;
	font-size:18px;
}

@media only screen and ( max-width: 800px )
{
.absolute{
	top: 0px;
	left:10px;
	font-size: 22px;
}

.absoluteBottom{
	bottom: 0px;
	left:10px;
	font-size: 22px;
}
}

/* キャプション付き画像 */

.mainPic{
	text-align:center;
}

.mainPicPic img{
	width:100%;
	max-width:600px;
	text-align:center;
}

.mainPicLabel{
    width:100%;
	max-width:600px;
	bottom: 0px;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    margin-bottom:8px;
	padding: 10px;
	font-size:15px;
	text-align:center;

}

@media screen and (min-width: 671px) {

.mainPicLabel{
   right:0px;
   bottom:10px;
   left:0px;
   margin:auto auto;
}

}

@media screen and (min-width: 971px) {

.flex3{
	display:flex;
}

.mainPic{
	text-align:left;
	margin-top:30px;
	margin-right:-40px;
	margin-bottom:-70px;
}

.mainPicPic img{
	width:40vw;
	margin-left:20px;
}

.mainPicLabel{
	width:40vw;
	margin-left:20px;
	margin-bottom:60px;
	bottom:0px;
}

}

.small{
	font-size:14px;
}

/*その他*/
.back_water{
	background-color:#B3E5FC;
	color:#616161;
	margin-top:-20px;
	padding:40px 0 20px 0;
}

.back_skyblue{
	background-color:#4FC3F7;
	color:#FFF;
	margin-top:-20px;
	padding:40px 0 20px 0;
}

.back_blue{
	background-color:#64B5F6;
	color:#FFF;
	margin-top:-20px;
	padding:40px 0 20px 0;
}

.back_gray{
	background-color:#d4d9d6;
	color:#444;
	margin-top:-20px;
	padding:20px 0 0 0;
}

.list{
	margin-left:-20px;
}

.list img{
	margin-right:10px;
}

.listTitle{
	font-size:22px;
}

.listSub{
	padding-left:50px;
}

.mainAd{
	text-align:center;
	margin:10px 10px 40px 10px;
	padding-bottom:10px;
}

.flex4{
	display:flex;
	justify-content:center;
	flex-wrap: wrap;
	margin:30px 0;
}

.englishName{
	margin:30px 0 0 -30px;
}

.flex5{
	display:flex;
	margin:20px 0 -20px 40px;
}

.frameAmazon {
	background:#fff; 
	font-size:16px;
	width:180px;
	height:250px;
	padding:5px;
	border-right:#D9D9D9 dotted;
}

.amazonArrow{
	vertical-align:middle;
	margin-right:10px;
}

.nextBar {
	font-size: 28px;
	line-height: 1.5;
	color:#FFF;
	font-weight:bold;
	margin:-35px 0px 0px 0px;
	padding:15px 10px 40px 30px;
	background:#1a237e;
	text-align:center;
}

.nextBar a{
	text-decoration:none;
}

.nextBar:hover{
	-webkit-transform: scale(1.05);
	box-shadow: 0px 0px 15px 5px rgba(255, 255, 255, 1);
	text-decoration:none;
}

.nextBar img{
	vertical-align:bottom;
	margin-right:10px;
}

.smallBackBlue{
	font-size: 18px; 
	line-height: 1.5;
	color:#fff;
	font-weight:bold;
	margin:-35px 0px 20px 0px;
	padding:15px 10px 20px 30px;
	background:#1a237e;
	text-align:center;
}

.ninja_onebutton{
	text-align:center;
	margin:20px 0px 10px 20px;
}

.rss{
	font-size:small;
	margin:20px 0px;
	background-color:#d4d9d6;
	line-height:1;
}

.halfAd{
	margin:20px 0 40px -20px;
	text-align:center;
}

@media screen and (min-width : 850px){
.rss_And_HalfAd{
	display:flex;
}

.halfAd{
	margin:-20px 0 30px 50px;
	text-align:center;
}

}

.halfAd_and_HalfAd{
	padding-bottom:-20px;
}

.halfAd2{
	margin:0px 0 40px 0;
	text-align:center;
}

@media screen and (min-width : 765px){
.halfAd2_And_HalfAd2{
	display:flex;
}

.halfAd2{
	margin:20px 40px 20px 40px;
	text-align:center;
}
}

/* もくじ */

.mokuji {
    width:98%;
	text-align:left;	
	padding: 0 5px;
	margin: 40px 0px;
}

.mokuji ul{
	font-size:16px;
}

.mokujiUl{
	display:inline-block;
	vertical-align:top;
}

.mokujiLi{
	font-size:19px;
	border-bottom:#1a237e 3px solid;
	margin-bottom:25px;
}

/* リンクリスト */

.linkList {
    width:98%;
	text-align:left;	
	padding: 0 5px;
}

.linkList ul{
	font-size:16px;
}

.linkListUl{
	display:inline-block;
	vertical-align:top;
}

/* フッター */

.container {
  padding-right: 15px;
  padding-left: 15px;
}

#footer {
	background-color:#1a237e;
	padding-top: 50px;
	margin-top:-60px;
	padding-bottom: 20px;
	color:#FFF;
}

#footer a{
	color:#FFF;
}

#footer a:hover,
#footer a:focus {
	color: #BFBFBF;
	outline: 0;
	text-decoration: none;
}

.footerImg {
	margin-left:-5px;
	margin-bottom:-20px;
}

#page-top {
	position: fixed;
	bottom: 5px;
	right: 10px;
}

#page-top a:hover {
	-webkit-transform: scale(1.2);
    transform: scale(1.2);
	display: inline-block;
}