﻿@charset "utf-8";
/* -----------------------------------------------
* General Setting
----------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl,
table,
form,
fieldset { }
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section { display: block }
table,
table th,
table td { font-size: 1em }
input,
select { font-size: 1em }
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}
img {
    vertical-align: middle;
    border: none;
}
li { }
input,
select { vertical-align: middle }
input[type="button"],
input[type="text"],
input[type="submit"],
button,
textarea,
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
sup{
    line-height: 1.2;
    position: relative;
    vertical-align: top;
}
a {
    -webkit-tap-highlight-color: transparent;
    outline: none;
}
a:link { text-decoration: none }
a:hover { text-decoration: underline }
a:focus { outline: none }
address { font-style: normal }
html {
    width: 100%;
    font-size: 87.5%;
}
body {
    width: 100%;
    color: #333333;
    font-family: "メイリオ", sans-serif;
    line-height: 1.5em;
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
}
table { font-size: 100% }
/*==============================================
   headerArea
================================================*/
#headerArea {
	background: rgba(255, 255, 255, 1);
	position: sticky;
	top: 0;
	z-index: 99;
	box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.1);
}
.utilBlockInner,
.globalBlockInner,
.siBlockInner {
    width: 1200px;
    padding: 0 40px;
    margin-left: auto;
    margin-right: auto;
}
.siBlockInner {
    display: table;
    padding: 10px 0;
    height: 45px;
}

/* 2412改修以降不使用（削除可）ここから */
.siBox {
    width: 329px;
    display: table-cell;
    vertical-align: middle;
}
.siBox h1,
.siBox p {
    margin: 0;
    padding: 0;
    line-height: 1;
}
.siBox img { border: none }
/* 2412改修以降不使用（削除可）ここまで */

.slBox {
    width: 280px;
    display: table-cell;
    vertical-align: middle;
}
.slBox h1,
.slBox p {
    margin: 0;
    padding: 0;
    line-height: 1;
}
.slBox img { border: none }

.menuBtn { display: none }
.utilBlock {
    color: #ffffff;
    background-color: #2077e3;
    font-size: 0.86em;
    overflow: hidden;
}
.utilBlockInner02 {
    float: right;
    width: 815px;
    padding: 6px 0;
}
.utilNav {
    float: left;
    margin: 0;
    padding: 0;
}
.utilNav li {
    float: left;
    position: relative;
    padding: 4px 0;
    list-style: none;
    margin-bottom: 0;
    margin-left: 0;
}
.utilNav li a {
    padding: 0 15px;
    border-right: 1px solid #fff;
}
.utilNav li:first-child a { border-left: 1px solid #fff }
.utilNav li a:link,
.utilNav li a:visited { color: #ffffff }
.utilBox { 
    float: right;
    display: flex;
    justify-content: space-between;
    flex-wrap:no-wrap;
}
.fontBox {
    margin: 0;
    float: left;
}
.fontBox dt,
.fontBox dd,
.fontBox li {
    float: left;
    margin-bottom: 0;
}
.fontBox dd,
.fontBox li { margin-left: 6px }
.fontBox dt { padding: 4px 0 }
.fontBox dd ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.fontBox li {
    cursor: pointer;
    padding: 2px 0;
    margin-bottom: 0;
}
.searchBox {
    float: right;
    text-align: right;
    padding: 2px 0;
}
.searchBox_new {
    text-align: right;
    padding: 2px 0;
}
.infotxt { display: none }
input.frm {
    margin-left: 6px;
    border: 1px solid #d0d6dd;
    padding: 4px 5px 3px 20px;
    width: 132px;
    background: url(/common_v2/images/ico_roop.gif) 5px 5px no-repeat #ffffff;
    line-height: normal;
}
input.btn {
    width: 41px;
    height: 23px;
}
.jumpBox {
    position: fixed;
    bottom: 60px;
    right: 32px;
    cursor: pointer;
    z-index: 900;
}
.globalNav {
    display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding: 0;
    line-height: 1.4em;
    list-style: none;
}
.globalNav br { display: none }
.globalNav > li {
    float: left;
    position: relative;
    font-size: 1em;
    padding: 20px 0;
    margin: -20px 0;
    position: relative;
}
.globalNav > li:hover:after,
.globalNav > li.current:after {
    content: " ";
    position: absolute;
    bottom: 12px;
    width: 80%;
    height: 3px;
    background-color: #2077e3;
    left: 10%;
    right: 10%;
}
.fontL .globalNav > li:hover:after,
.fontL .globalNav > li.current:after { bottom: 16px }
.globalNav > li > a {
    padding: 4px 10px;
    border-right: 1px solid #aaaaaa;
    display: block;
    text-align: center;
}
.globalNav > li:first-child > a { border-left: 1px solid #aaaaaa }
.globalNav > li a:link,
.globalNav > li a:visited {
    color: #333333;
    text-decoration: none;
}

/* ↓2412改修以降不使用（削除可） */
.globalNum01 { width: 19.2% }
.globalNum02 { width: 24.5% }
.globalNum03 { width: 15.9% }
.globalNum04 { width: 26.2% }
.globalNum05 { width: 14.2% }
/* ↑2412改修以降不使用（削除可） */

.globalMenu01 { width: 10.6% }
.globalMenu02 { width: 9.6% }
.globalMenu03 { width: 25.7% }
.globalMenu04 { width: 15.0%; }
.globalMenu05 { width: 25.0%; }
.globalMenu06 { width: 14.1%; }

.irButton {
    display:table-cell;
    padding: 0 0 0 10px;
}
.irButtonSp {
    display:none;
    padding: 10px;
}

.irButton p {
    display: block;
    float: right;
    box-sizing: border-box;
    width: 100%;
    background: url("../images/column_box _title_bg.png") no-repeat right;
    border-radius: 7px;
    margin: 0;
    padding: 8px 18px 8px 8px;
    line-height: 1.3em;
    font-size: 0.9em;
}
.irButton a{
    color: #ffffff;
}
.irButtonSp p{
    display: block;
    box-sizing: border-box;
    width: 60%;
    background: url("../images/column_box _title_bg.png") no-repeat right;
    border-radius: 7px;
    margin: 10px auto;
    padding: 8px 18px 8px 8px;
    font-size: 1em;
    text-align: center;
}
.globalNav > li.irButtonSp a:link,
.globalNav > li.irButtonSp a:visited {
    color: #ffffff;
}

.globalNav ul {
    display: none;
    position: absolute;
    margin-top: 21px;
    left: 0;
    white-space: nowrap;
    padding: 0;
    list-style: none;
    z-index: 100;
    margin-left: 0;
}
.fontL .globalNav ul { margin-top: 10px }
.globalNav > li:hover > ul { display: block }
.globalNav li:last-child ul {
    right: 0;
    left: auto;
}
.globalNav ul li {
    font-size: 0.93em;
    padding-left: 0;
    background-color: #2477de;
    opacity: 0.95;
    filter: alpha(opacity=95);
    -ms-filter: "alpha(opacity=95)";
    border-top: 1px solid #fff;
    margin-bottom: 0;
    margin-left: 0;
}
.globalNav ul li:first-child { border-top: none }
.globalNav ul li:hover { background-color: #296AB9 }
.globalNav ul li a {
    padding: 16px;
    display: block;
}
.globalNav ul li a:link,
.globalNav ul li a:visited { color: #ffffff }
#contentArea { clear: both }
.pathBlock {
    background-color: #f3f3f3;
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}
.pathNav {
    width: 1200px;
    padding: 0 40px;
    position: relative;
    font-size: 0.86em;
    margin: 4px auto;
}
.pathNav li {
    display: inline;
    margin: 0 6px 0 0;
    padding-left: 0;
    margin-bottom: 0;
}
.pathNav li a {
    display: inline-block;
    margin: 0 8px 0 0;
}
.pathNav li:first-child a { margin-left: 0 }
.contentBlock {
    width: 960px;
    padding: 40px 32px;
    margin: 0 auto;
    overflow: hidden;
    background-color: #ffffff;
}
.mainBlock {
    width: 684px;
    float: right;
}
.sideBlock {
    width: 250px;
    float: left;
}
.mypageBtn { margin: 0 0 28px 0 }
.mypageBtn span {
    background: url(/common_v2/images/btn_mypage.gif) 0 0 no-repeat;
    width: 250px;
    height: 56px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
}
.mypageBtn span a {
    height: 100%;
    display: block;
}
.mainBlock a:link,
.mainBlock a:visited { color: #0000ff }
.sideTitle {
    font-size: 1.14em;
    background-color: #2077e3;
    font-weight: bold;
    padding: 12px;
    letter-spacing: 1px;
    margin: 0;
    color: #fff;
}
.sideTitle a:link,
.sideTitle a:visited { color: #ffffff }
.sideNav {
    font-size: 1em;
    margin: 0;
    padding: 0;
    list-style: none;
}
.sideNav a { display: block }
.sideNav > li {
    /*background: url(/common_v2/images/arrow01_blue.gif) 22px center no-repeat;*/
    border-bottom: 1px solid #cccccc;
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
}
.sideNav > li span {
    background: url(/common_v2/images/arrow01_blue.gif) 22px 1.05em no-repeat;
    display: block;
}
.sideNav > li a { padding: 12px 12px 12px 40px }
.sideNav li.sideActive > span,
.sideNav li > span:hover { background: url(/common_v2/images/arrow01_white.gif) 22px 1.05em no-repeat #1f6199 }
.sideNav li a:link,
.sideNav li a:visited { color: #0066e3 }
.sideNav li.sideActive > span > a:link,
.sideNav li.sideActive > span > a:visited,
.sideNav li > span:hover > a:link,
.sideNav li > span:hover > a:visited { color: #ffffff }
.sideNav ul {
    background-color: #ffffff;
    padding: 0;
    margin: 0;
    list-style: none;
}
.sideNav ul li {
    padding-left: 0;
    margin-bottom: 0;
    margin-left: 0;
}
.sideNav ul li span {
    background: url(/common_v2/images/arrow02_blue.gif) 38px 1.15em no-repeat #ffffff;
    border-top: 1px dashed #aaaaaa;
}
.sideNav ul li:hover span,
.sideNav ul li.sideActive span { background: url(/common_v2/images/arrow02_white.gif) 38px 1.05em no-repeat #1f6199 }
.sideNav ul li a { padding: 12px 12px 12px 55px }
#guideArea {
    padding: 32px 0;
    overflow: hidden;
    clear: both;
    border-top: 1px solid #cccccc;
}
.guideAreaInner {
    width: 1200px;
    padding: 0 40px;
    margin-left: auto;
    margin-right: auto;
}
.guideNav {
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-right: 16px;
    margin: 0;
    padding: 0 10px 0 0;
}
.guideNav dt {
    font-size: 1em;
    font-weight: bold;
    margin: 0 0 16px 0;
    padding: 0;
}
.guideNav dd {
    margin: 0;
    padding: 0;
}
.guideNav a:link,
.guideNav a:visited { color: #0066e3 }

/* 2412改修以降不使用（削除可）ここから */
.guideNum01 { width: 25.5% }
.guideNum02 { width: 20% }
.guideNum03 { width: 19% }
.guideNum04 { width: 23.5% }
.guideNum05 {
    width: 12%;
    padding-right: 0;
}
/* 2412改修以降不使用（削除可）ここまで */

.guide01 { width: 18% }
.guide02 { width: 16% }
.guide03 { width: 18.5% }
.guide04 { width: 16.5% }
.guide05 { width: 21% }
.guide06 {
    width: 10%;
    padding-right: 0;
}

.guideSubNav {
    font-size: 0.86em;
    border-left: 1px solid #aaaaaa;
    margin: 0;
    padding: 0 0 0 16px;
    list-style: none;
}
.guideSubNav li { margin-left: 0 }
#footerArea {
    background-color: #2077e3;
    overflow: hidden;
    text-align: center;
    clear: both;
}
.footerAreaInner {
    font-size: 0.86em;
    color: #ffffff;
    margin: 25px 0;
}
.footerNav {
    width: 680px;
    margin: 0 auto 12px;
    padding: 0;
}
.footerNav li {
    display: inline;
    position: relative;
    padding: 0;
    line-height: 2.2em;
    margin-left: 0;
}
.footerNav li a {
    padding: 0 10px;
    display: inline;
    border-right: 1px solid #fff;
}
.footerNav li:first-child a,
.footerNav li .footerBr + a { border-left: 1px solid #fff }
.footerNav li a:link,
.footerNav li a:visited { color: #ffffff }
.footerNav br { display: none }
.footerNav .footerBr { display: block }
.snsBox {
    margin: 0 0 16px 0;
    outline: 0;
    list-style: none;
}
.snsBox li,
.snsBox li a { display: inline }
.snsBox li { margin-left: 12px }
.snsBox li:first-child { margin-left: 0 }

.snsBox_head {
    display: block;
    margin: 0;
    padding: 0 0 0 20px;
    outline: 0;
    list-style: none;
}
.snsBox_head li,
.snsBox_head li a { display: inline }
.snsBox_head li { margin-left: 12px }
.snsBox_head li:first-child { margin-left: 0 }

.footerAreaInner p {
    margin: 0;
    padding: 0;
}
.copyBlock {
    font-size: 0.79em;
    background-color: #ffffff;
    padding: 12px 0;
    margin: 0;
}
body.lteIe8 { min-width: 1024px }
.lteIe8 .utilBlockInner,
.lteIe8 .pathNav {
    width: 960px;
    padding-right: 0;
    padding-left: 0;
}
.lteIe8 .siBlockInner { width: 960px }
.lteIe8 .globalNav ul { margin-top: 10px }
.lteIe8 .guideAreaInner {
    width: 960px;
    padding-right: 32px;
    padding-left: 32px;
}
.lteIe8 #footerArea { width: 100% }
.lteIe8 .footerAreaInner {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
}

@media print {
.contentBlock, .mainBlock, .sideBlock {
	overflow: visible !important; }

.sectionBox,
.cl1Box,
.cl2Box,
.cl3Box,
.cl3Box_2,
.cl4Box,
.cl5Box,
.layoutBox .mark01,
.layoutBox .mark02,
.borderBox,
.linkbtnBox,
.layoutBox,
.captionBox,
.layoutBox .imgBox,
.captionBox .imgBox,
.topicsBox,
.movieBox,
.followBox {
	overflow: visible !important; }

.Ie .contentBlock, .Ie .mainBlock, .Ie .sideBlock {
	overflow: hidden !important; }

.Ie .sectionBox,
.Ie .cl1Box,
.Ie .cl2Box,
.Ie .cl3Box,
.Ie .cl3Box_2,
.Ie .cl4Box,
.Ie .cl5Box,
.Ie .layoutBox .mark01,
.Ie .layoutBox .mark02,
.Ie .borderBox,
.Ie .linkbtnBox,
.Ie .layoutBox,
.Ie .captionBox,
.Ie .layoutBox .imgBox,
.Ie .captionBox .imgBox,
.Ie .topicsBox,
.Ie .movieBox,
.Ie .followBox {
	overflow: hidden !important; }

.sectionBox:after,
.cl1Box:after,
.cl2Box:after,
.cl3Box:after,
.cl3Box_2:after,
.cl4Box:after,
.cl5Box:after,
.layoutBox .mark01:after,
.layoutBox .mark02:after,
.borderBox:after,
.linkbtnBox:after,
.layoutBox:after,
.captionBox:after,
.layoutBox .imgBox:after,
.captionBox .imgBox:after,
.topicsBox:after,
.movieBox:after,
.followBox:after,
.column2BoxLp:after {
	content: ""; display: block; clear: both; }

/*
.utilBlockInner,
.globalBlockInner,
.siBlockInner,
.pathNav {
	width: 960px; padding-left: 0; padding-right: 0; margin-left: auto; margin-right: auto; overflow: visible; }

.utilBlockInner:after,
.globalBlockInner:after,
.siBlockInner:after,
#contentArea:after {
	content: ""; display: block; clear: both; }
*/

.Ie .sectionBox:after,
.Ie .cl1Box:after,
.Ie .cl2Box:after,
.Ie .cl3Box:after,
.Ie .cl3Box_2:after,
.Ie .cl4Box:after,
.Ie .cl5Box:after,
.Ie .layoutBox .mark01:after,
.Ie .layoutBox .mark02:after,
.Ie .borderBox:after,
.Ie .linkbtnBox:after,
.Ie .layoutBox:after,
.Ie .captionBox:after,
.Ie .layoutBox .imgBox:after,
.Ie .captionBox .imgBox:after,
.Ie .topicsBox:after,
.Ie .movieBox:after,
.Ie .followBox:after,
.Ie .column2BoxLp:after {
	content: ""; display: inherit; clear: none; }

.followmenu {
	display: none;}
.newslist li:after, .newslist02 li:after {
	content:"";
	display: block;
	clear: both;
}
/*
.cl2Box {
	float: none !important;
	display: inline-block !important;
	margin-left: 3% !important;
	vertical-align: top;}
.clReset {
	margin-left: 0 !important;}
*/
thead {
  display: table-row-group !important;}
table{
	border-collapse:separate !important; border-spacing:0px !important; }

.Ie .sp-slides-container {
	width: 960px; margin: 0 auto; overflow: hidden; page-break-before: always;}
.Ie .topPage .sp-slides-container {
	width: auto; overflow: visible; page-break-before: auto;}

.Ie .page-break {
	page-break-before: always; }
}




/* clearfix  2018.10追記 */

.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
	}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}










