@charset "utf-8";

/* ============================================================ *\
    $base
\* ============================================================ */
.main_content{
	font-size:0.65em;
	line-height:2;
}


html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, a, address, img, strong, sub, sup, dl, dt, dd, ol, ul, li, label,table, caption, tbody, tfoot, thead, tr, th, td, form {
    margin: 0;
    padding: 0;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
	font-size:100%;
}

html {
    font-size: 62.5%;
    overflow-y: scroll;
}

body {
    font-family:Arial, Helvetica, sans-serif;
    color: #000;
    vertical-align: baseline;
}
body.small { font-size: .8em; }
body.middle { font-size: 1em; }
body.large { font-size: 1.6em; }
body.en { font-family: Arial, sans-serif; }

img {
    border: 0;
    vertical-align: bottom;
}

ul, ol { list-style: outside none; }

a {
	color:#2e3689;
	text-decoration:none;
}
a:hover{
}

/*body.en a { text-decoration: none; }*/

a:hover {
}

a:visited { }

a:visited:hover { }

noscript p {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.4em;
    text-align: center;
    line-height: 1.2;
}
body.en noscript p {
    font-size: 1.5em;
    line-height: 1.3;
}

/* ============================================================ *\
    $common
\* ============================================================ */
img{
	max-width:100%;
}
.wrap,.main_content{
	margin:0 10px 80px;
}
.main_content p{
	font-size:1.4em;
}
.mt_10{
	margin-top:10px!important;
}
.mt_20{
	margin-top:20px!important;
}
.mt_30{
	margin-top:30px!important;
}
.mt_40{
	margin-top:40px!important;
}
.mt_50{
	margin-top:50px!important;
}

.mb_10{
	margin-bottom:10px!important;
}
.mb_20{
	margin-bottom:20px!important;
}
.mb_30{
	margin-bottom:20px!important;
}
.mb_40{
	margin-bottom:30px!important;
}
.mb_50{
	margin-bottom:30px!important;
}
.mb_60{
	margin-bottom:40px!important;
}
.mb_70{
	margin-bottom:50px!important;
}
.mb_80{
	margin-bottom:50px!important;
}
.mb_90{
	margin-bottom:60px!important;
}
.mb_100{
	margin-bottom:60px!important;
}
.tal{
	text-align:left;
}
.tac{
	text-align:center;
}
.tar{
	text-align:right;
}
.font_ora{
	color:#B75F00;
}
.note{
	font-size:1.35em!important;
	line-height:1.6;
}
.font_ind01{
	text-indent:-1.3em;
	padding-left:1.3em;
}
.font_pd{
	padding-left:1.5em;
}

.font_ind01_small{
	text-indent:-1.2em;
	padding-left:1.2em;

}
.font_ind02_small{
	text-indent:-1em;
	padding-left:1em;
}
.font_ind01_small .item{
	font-size:0.6em!important;
	vertical-align:middle;
}
.spNone{
	display:none;
}
/* ============================================================ *\
    $header
\* ============================================================ */
.topbox{
	margin-bottom:10px;
	position:relative;
	padding:10px;
	background:#5078b0;
	color:#fff;
}
div#main h2.main_title{
	position:relative;
	z-index:1000;
	margin:0 20% 0 10%;
	text-align:center;
	font-weight:bold;
	font-size:0.9em;
	line-height:1.4;
	margin-bottom:-4px;
	width:auto!important;
}
.main_title strong{
	display:block;
	vertical-align:middle;
	margin:0 5px;
	font-size:1.3em;
}
.large .main_title{
	font-size:0.9em;
}
.large .main_title strong{
	padding-top:5px;
	font-size:1.2em;
}
.top_menu{
	position:absolute;
	right:8px;
	top:30px;
	width:100px;
	text-align:right;
}
.large .top_lg{
	margin-top:5px;
	margin-bottom:10px;
}
.large nav .nav_inner{
	top:20px;
}
.top_lg{
	margin-bottom:2px;
	position:relative;
	z-index:9;
	display:inline-block;
	width:80px;
	height:28px;
	font-size:0.85em;
}
.top_lg dt{
	cursor:pointer;
	transition:all 0.3s;
	opacity:1;
}
.top_lg dt,.top_lg_list li{
	background:#fff;
	color:#24569C;
	padding:1px 3px;
	line-height:1.4;
	text-align:center;
	border:1px solid #5078b0;
	margin-bottom:-2px;
}
.top_lg_list li a{
	display:block;
		padding:2px 0;
		text-decoration:none;

}
.top_lg dd{
	display:none;
}
dl#textchanger{
	display:inline-block;
}
dl#textchanger dt {
	margin-right:5px;
    display:none;
    font-size: 1em;
    vertical-align: middle;
}
dl#textchanger dd {
	display:inline-block;
    margin:0 2px;
    vertical-align:middle;
}
dl#textchanger dd.small{
	font-size:1em;
}
dl#textchanger dd.middle{
	font-size:1.2em;
}
dl#textchanger dd.large{
	font-size:1.5em;
}
dl#textchanger dd a{
	color:#24569C;
	background:#fff;
	line-height:1;
}
dl#textchanger dd.small a{
	padding:0 3px;
}
dl#textchanger dd.middle a{
	padding:0 2px;
}
dl#textchanger dd.large a{
	padding:0 6px;
}
dl#textchanger dd.current a{
	border:1px solid #fff;
	color:#fff;
	background:none;
}
.nav li{
	border-top:1px solid #fff;
}
.nav li a{
	color:#595959;
}
.nav li a.current{
	color:#000;
}

/* ============================================================ *\
    $top
\* ============================================================ */

.top_main_tit{
	text-align:center;
	font-size:3em;
	font-weight:bold;
	color:#2e3689;
}
.main_img{
	text-align:center;
	margin-bottom:30px;
}
.top_tit01,.page_title{
	margin:0 auto 25px;
	width:180px;
	height:180px;
	background:url(../img/top/img_01.png) no-repeat;
	background-size:180px;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	color:#fff;
	font-size:1.5em;
	font-weight:bold;
	line-height:1.6;
}
.page_title{
	width:160px;
	height:160px;
	background:#2E3689;
	font-size:1.5em;
}
.article_title{
	margin-bottom:25px;
	font-size:22px;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
}
.article_title strong{
	display:inline-block;
	border-bottom:1px #221714 solid;
	height:42px;
	width:100%;
}
.article_title strong span{
	display:inline-block;
	font-size:28px;
	background:#fff;
	width:80%;
}
.article_title_small{
	font-size:20px;
	padding-top:50px;
	display:inline-block;
}
.article_title02{
	margin-bottom:15px;
	font-size:1.8em;
	font-weight:bold;
	text-align:center;
	line-height:1.6;
	color:#2E3689;
}

.large .nav{
}
.large .nav li{
	font-size:0.9em;
}
.large .page_title, .large .top_tit01{
	font-size:1.35em;
	line-height:1.3;
}
.btn_top{
	text-align:right;
}
.btn_top a{
	width:40px;
	margin-right:10px;
	display:inline-block;
}
.footer{
	padding:20px;
	text-align:center;
	background:#000;
	color: #fff;
}
.zai_table_box{
	background:#2E3689;
	padding:0 6px 6px;
	margin:0 auto;
}
.zai_table_box h3{
	color:#fff;
	padding: 10px 10px 5px;
	text-align:center;
	font-size:2.2em;
	line-height:1.5;
}
.inner_whi{
	padding:10px;
	background:#fff;
}
.zai_table_tit{
	padding:10px 15px 15px;
	font-size:1.8em!important;
	line-height:1.6;
}
.zai_table_tit span{
	color:#B75F00;
	font-weight:bold;
}
.zai_table_col{
	padding:10px 0;
	margin-bottom:-1px;
	border-top:1px solid #221714;
	border-bottom:1px solid #221714;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	font-size:1.3em;
	line-height:1.4;
}
.zai_table_col dt{
	min-width:105px;
	padding:0 5px;
	margin-right:15px;
	min-height:42px;
	text-align:center;
	border-right:1px solid #221714;
	display:flex;
	flex-wrap: wrap;
	justify-content:center;
	align-items:center;
}
.zai_td01{
	display:flex;
	flex-wrap: wrap;
	align-items:center;
}
.zai_table_col .note{
	font-size:smaller!important;
}
/* ============================================================ *\
    $introduction
\* ============================================================ */
.intro_list{
	display:flex;
	flex-wrap: wrap;
	justify-content:space-between;
	align-items:stretch;
}
.intro_list li {
	margin-bottom:20px;
	width:100%;
}
.intro_list li h3{
	padding:5px 5px 2px;
	font-size:1.8em;
	background:#F08300;
	color:#fff;
	text-align:center;
}
.intro_img{
	margin:15px 20% 50px;
}
.view_list{
	padding-top:20px;
	margin-bottom:-10px;
	display:flex;
	flex-wrap: wrap;
	justify-content:space-between;
	align-items:stretch;
}
.view_list li{
	margin:0 0 40px;
	width:47%;
}
.view_list li a{
	display:block;
}
.view_list li h3{
	display:flex;
	flex-wrap: wrap;
	justify-content:center;
	align-items:center;
	min-height:50px;
	position:relative;
	padding:22px 5px 4px;
	background:#517DBF;
	color:#fff;
	text-align:center;
	font-size:1.5em;
	line-height:1.5;
	font-weight:normal;
}
.view_list li h3 span{
	position:absolute;
	width:32px;
	height:32px;
	text-align:center;
	line-height:34px;
	left:50%;
	top:-17px;
	margin-left:-17px;
	border:1px solid #fff;
	background:#517DBF;
	color:#fff;
	border-radius:50%;
	font-size:1.2em;
	font-weight:bold;
}
.view_num{
	margin-bottom:50px;
	text-align:center;	
}
.view_num li{
	display:inline-block;
	width:28px;
	height:28px;
	line-height:30px;
	text-align:center;
	color:#fff;
	border-radius:50%;
	font-size:1.4em;
	font-weight:bold;
}
.view_num li a{
	display:block;
	color:#fff;
	width:100%;
	height:100%;
	border-radius:50%;
	background:#a8aeb2;
	transition:all 0.3s;
	opacity:1;
}

.view_num li.current{
	background:#313994;
}
/* ============================================================ *\
    $overview
\* ============================================================ */
.overview_table{
	 border-width:0; border-spacing:0; border-collapse:collapse;
	 font-size:1.3em;
	 line-height:1.6;
}
.large .overview_table{
	font-size:1.2em!important;
}
.overview_table_col01{
	width:70px;
}
.overview_table_col02{
	width:63px;
}

.overview_table th,.overview_table td{
	padding:3px;
	border-top: 1px solid #221714;
	border-bottom: 1px solid #221714;
	vertical-align:middle;
	height:100%;
}
.overview_table th{
	text-align:center;
	padding:8px 5px;
}
.overview_ico{
	text-align:center;
	min-height:65px;
}
.overview_ico img{
	display:inline-block;
	width:40px;
}
.overview_ico h3{
	text-align:center;
	font-size:0.9em;
	font-weight:bold;
	color:#2a3688;
}
.overview_th{
	height:100%;
	
}
.overview_th div{
	padding:0 5px;
	height:100%;
	background:#2a3688;
	color:#fff;
	display:flex;
	flex-wrap: nowrap;
	justify-content:center;
	align-items:center;
	font-size:1.1em;
	font-weight:bold;
}
.overview_th_color02 .overview_ico h3{
	color:#116fb5;
}
.overview_th_color03 .overview_ico h3{
	color:#1e8eb4;
}
.overview_th_color04 .overview_ico h3{
	color:#076974;
}
.overview_th_color02 .overview_th div{
	background:#116fb5;
}
.overview_th_color03 .overview_th div{
	background:#1e8eb4;
}
.overview_th_color04 .overview_th div{
	background:#076974;
}



#page_header{
	display:none;
	transition: 0.3s;
}

.page_nav{
	width:72%;
	display:flex;
	flex-wrap: nowrap;
	justify-content:space-between;
	align-items:center;
}
.page_nav li a{
	color:#fff;
	transition: 0.3s;
	opacity:1;
}
.page_nav li a:hover{
	transition: 0.3s;
	opacity:0.75;
}



.page_logo,.nav_inner a{
	opacity:0;
	transition: .3s;
}
.nav_inner .nav_btn{
	transition: .3s;
	opacity:1;
}
.menu_opn .page_logo, .menu_opn .nav_inner a{
	transition: .3s;
	opacity:1;
}
.large .overlay ul{
	padding-top:120px;
}
.overlay {
	overflow:hidden;
  opacity: 0;
  z-index: -1;
  position: absolute;
  transition: .3s;
  width: 100%;
  height:0;
  background-color: rgba(80,120,176, 0.95);
  
  top: 0; }
  .menu_opn .overlay{
	  height:auto;
	 }
  .overlay ul {
    padding: 80px 0 0 ; }
    .overlay ul li {
      list-style: none; }
      .overlay ul li a {
		  text-decoration:none;
        padding: 10px 0;
        text-align: center;
        color: #fff;
        display: block;
        font-size: 1.1em;
        transition: .3s; }
        .overlay ul li a:hover {
			text-decoration:none;
          opacity: .7;
          text-decoration: underline; }
  .overlay .link_nav_wrap {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding-bottom: 40px; }
    .overlay .link_nav_wrap a {
      width: 30px;
      height: 30px;
      border-radius: 30px;
      background-color: #fff;
      display: inline-block;
      text-align: center;
      padding: 2px 0 0;
      transition: .3s;
      margin: 0 5px; }
      .overlay .link_nav_wrap a:hover {
        opacity: .5; }
      .overlay .link_nav_wrap a.amazon {
        width: auto;
        height: auto;
        color: #fff;
        text-decoration: underline;
        background-color: transparent;
        font-size: 14px; }
        .overlay .link_nav_wrap a.amazon img {
          margin-right: 5px; }
      .overlay .link_nav_wrap a svg {
        fill: #666; }

.menu_opn .overlay {
  opacity: 1;
  z-index: 999;
  overflow-y: scroll; }

nav{
	position:relative;
	margin-bottom:30px;
	width:100%;
}
nav .nav_inner {
	position:absolute;
	z-index:9999;
	left:0;
	top:0;
    display: flex;
    align-items: center;
}
nav a svg{
	fill: #fff !important;
}
.page_logo{
	padding:13px 10px;
	width:40px;
}
nav .nav_inner a {
    margin: 0 15px;
    transition: .3s;
}
.menu_opn nav {
  background-color: transparent !important;
  box-shadow: none !important; }

  .menu_opn nav a svg {
    fill: #fff !important; }


.nav_btn {
	position:relative;
	z-index:9;
	left:0;
	top:16px;
    width: 28px;
    height: 28px;
	padding:10px;
    transition: .3s;}
    .nav_btn span {
      width: 30px;
      margin: 0;
      height: 2px;
      position:absolute;
	  right:10px;
      background-color: #fff;
      top: 12px;
      transition: .3s; }
      .nav_btn span:nth-child(2) {
        top: 22px; }
      .nav_btn span:nth-child(3) {
        top: 32px; }
		.nav_btn_bg{
			background:rgba(80,120,176,0.8);
		}
.menu_opn .nav_btn {
    background-color: none; }
    .menu_opn .nav_btn span {
      transform: rotate(45deg);
      top: 22px; }
      .menu_opn .nav_btn span:nth-child(2) {
        opacity: 0; }
      .menu_opn .nav_btn span:nth-child(3) {
		 width: 30px;
        top: 22px;
        transform: rotate(-45deg); }
		
.page_logo{
	overflow:hidden;
	width:40px;
	height:26px;
	background:url(../img/logo_sp.png) no-repeat center center;
	background-size:40px;
}
.page_logo a{
	display:block;
	width:100%;
	height:100%;
}
.nav_btn span{
	background:#fff;
}
.nav_btn_bg span{
	background:#fff;
}
.menu_opn .nav_btn span,.nav_btn_whi .nav_btn span{
	background:#fff;
}

.nav_top_whi{
	padding-top:50px!important;
}
.menu_opn .nav_inner{
}



@media only screen and (min-width: 0) and (max-width: 360px) {
.top_lg{
	width:55px;
}
.main_title{
	width:200px;
}
.main_title strong{
	font-size:1.2em;
}

.large .top_lg{
	font-size:0.8em;
}
.large #textchanger{
	font-size:0.8em;
}
.article_title strong{
	height:40px;
}
.article_title_small{
	padding-top:35px;
}
}


