html, body, main { height:100%; }

/*body {
    margin: 0;
    padding: 0;
    font-family: Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
    line-height: 1.4;
    color: #333333;
    font-size: 87.5%
}
*/
/* celarfix box element */
main:after,
section:after,
p:after,
ul:after,
li:after {
	content: "";
	display: block;
	clear: both;
	float: none;
}

.button > a:hover,
.button > a:active,
.button > a:visited,
.button > a:focus { font-size:#000; opacity:1; transition:none; }

a:link {
    color: #006699;
    text-decoration: none
}

a:visited {
    /* color: purple; */
    text-decoration: none
}

a:hover,a:active,a:focus {
    color: #006699;
    text-decoration: underline
}


p { margin:0; }
img { vertical-align:bottom; border:0; }
img.escape-w100 { max-width:inherit; }



/*
---------------------------
        font-size
---------------------------
*/
.fs10 { font-size:10px; }
.fs11 { font-size:11px; }
.fs12 { font-size:12px; }
.fs13 { font-size:13px; }
.fs14 { font-size:14px; }
.fs15 { font-size:15px; }
.fs16 { font-size:16px; }
.fs17 { font-size:17px; }
.fs18 { font-size:18px; }
.fs19 { font-size:19px; }
.fs20 { font-size:20px; }
.fs21 { font-size:21px; }
.fs22 { font-size:22px; }
.fs23 { font-size:23px; }
.fs24 { font-size:24px; }
.fs25 { font-size:25px; }
.fs26 { font-size:26px; }
.fs27 { font-size:27px; }
.fs28 { font-size:28px; }
.fs29 { font-size:29px; }
.fs30 { font-size:30px; }
.fs31 { font-size:31px; }
.fs32 { font-size:32px; }
.fs33 { font-size:33px; }
.fs34 { font-size:34px; }
.fs35 { font-size:35px; }
.fs36 { font-size:36px; }
.fs37 { font-size:37px; }
.fs38 { font-size:38px; }
.fs39 { font-size:39px; }
.fs40 { font-size:40px; }
.fs41 { font-size:41px; }
.fs42 { font-size:42px; }
.fs43 { font-size:43px; }
.fs44 { font-size:44px; }
.fs45 { font-size:45px; }
.fs46 { font-size:46px; }
.fs47 { font-size:47px; }
.fs48 { font-size:48px; }
.fs49 { font-size:49px; }
.fs50 { font-size:50px; }
.fs60 { font-size:60px; }
.fs70 { font-size:70px; }



/*
---------------------------
        maragin-set
---------------------------
*/
.mb0 { margin-bottom:0px; }
.mb5 { margin-bottom:5px; }
.mb10 { margin-bottom:10px; }
.mb15 { margin-bottom:15px; }
.mb20 { margin-bottom:20px; }
.mb25 { margin-bottom:25px; }
.mb30 { margin-bottom:30px; }
.mb35 { margin-bottom:35px; }
.mb40 { margin-bottom:40px; }
.mb45 { margin-bottom:45px; }
.mb50 { margin-bottom:50px; }
.mb55 { margin-bottom:55px; }
.mb60 { margin-bottom:60px; }
.mb65 { margin-bottom:65px; }
.mb70 { margin-bottom:70px; }
.mb75 { margin-bottom:75px; }
.mb80 { margin-bottom:80px; }
.mb85 { margin-bottom:85px; }
.mb90 { margin-bottom:90px; }
.mb95 { margin-bottom:95px; }
.mb100 { margin-bottom:100px; }
.mb150 { margin-bottom:150px; }
.mb200 { margin-bottom:200px; }
.mb250 { margin-bottom:250px; }
.mb300 { margin-bottom:300px; }

.mt0 { margin-top:0px; }
.mt5 { margin-top:5px; }
.mt10 { margin-top:10px; }
.mt15 { margin-top:15px; }
.mt20 { margin-top:20px; }
.mt25 { margin-top:25px; }
.mt30 { margin-top:30px; }
.mt35 { margin-top:35px; }
.mt40 { margin-top:40px; }
.mt45 { margin-top:45px; }
.mt50 { margin-top:50px; }
.mt55 { margin-top:55px; }
.mt60 { margin-top:60px; }
.mt65 { margin-top:65px; }
.mt70 { margin-top:70px; }
.mt75 { margin-top:75px; }
.mt80 { margin-top:80px; }
.mt85 { margin-top:85px; }
.mt90 { margin-top:90px; }
.mt95 { margin-top:95px; }
.mt100 { margin-top:100px; }
.mt150 { margin-top:150px; }
.mt200 { margin-top:200px; }
.mt250 { margin-top:250px; }
.mt300 { margin-top:300px; }

.ml0 { margin-left:0px; }
.ml5 { margin-left:5px; }
.ml10 { margin-left:10px; }
.ml15 { margin-left:15px; }
.ml20 { margin-left:20px; }
.ml25 { margin-left:25px; }
.ml30 { margin-left:30px; }
.ml35 { margin-left:35px; }
.ml40 { margin-left:40px; }
.ml45 { margin-left:45px; }
.ml50 { margin-left:50px; }
.ml55 { margin-left:55px; }
.ml60 { margin-left:60px; }
.ml65 { margin-left:65px; }
.ml70 { margin-left:70px; }
.ml75 { margin-left:75px; }
.ml80 { margin-left:80px; }
.ml85 { margin-left:85px; }
.ml90 { margin-left:90px; }
.ml95 { margin-left:95px; }
.ml100 { margin-left:100px; }
.ml150 { margin-left:150px; }
.ml200 { margin-left:200px; }
.ml250 { margin-left:250px; }
.ml300 { margin-left:300px; }

.mr0 { margin-right:0px; }
.mr5 { margin-right:5px; }
.mr10 { margin-right:10px; }
.mr15 { margin-right:15px; }
.mr20 { margin-right:20px; }
.mr25 { margin-right:25px; }
.mr30 { margin-right:30px; }
.mr35 { margin-right:35px; }
.mr40 { margin-right:40px; }
.mr45 { margin-right:45px; }
.mr50 { margin-right:50px; }
.mr55 { margin-right:55px; }
.mr60 { margin-right:60px; }
.mr65 { margin-right:65px; }
.mr70 { margin-right:70px; }
.mr75 { margin-right:75px; }
.mr80 { margin-right:80px; }
.mr85 { margin-right:85px; }
.mr90 { margin-right:90px; }
.mr95 { margin-right:95px; }
.mr100 { margin-right:100px; }
.mr150 { margin-right:150px; }
.mr200 { margin-right:200px; }
.mr250 { margin-right:250px; }
.mr300 { margin-right:300px; }


/*
---------------------------
      padding-set
---------------------------
*/
.pd5 { padding:5px; }
.pd10 { padding:10px; }
.pd15 { padding:15px; }
.pd20 { padding:20px; }
.pd25 { padding:25px; }
.pd30 { padding:30px; }
.pd35 { padding:35px; }
.pd40 { padding:40px; }
.pd45 { padding:45px; }
.pd50 { padding:50px; }
.pd55 { padding:55px; }
.pd60 { padding:60px; }
.pd65 { padding:65px; }
.pd70 { padding:70px; }
.pd75 { padding:75px; }
.pd80 { padding:80px; }
.pd85 { padding:85px; }
.pd90 { padding:90px; }
.pd95 { padding:95px; }
.pd100 { padding:100px; }
.pd150 { padding:150px; }
.pd200 { padding:200px; }
.pd250 { padding:250px; }
.pd300 { padding:300px; }

.pdb0 { padding-bottom:0px; }
.pdb5 { padding-bottom:5px; }
.pdb10 { padding-bottom:10px; }
.pdb15 { padding-bottom:15px; }
.pdb20 { padding-bottom:20px; }
.pdb25 { padding-bottom:25px; }
.pdb30 { padding-bottom:30px; }
.pdb35 { padding-bottom:35px; }
.pdb40 { padding-bottom:40px; }
.pdb45 { padding-bottom:45px; }
.pdb50 { padding-bottom:50px; }
.pdb55 { padding-bottom:55px; }
.pdb60 { padding-bottom:60px; }
.pdb65 { padding-bottom:65px; }
.pdb70 { padding-bottom:70px; }
.pdb75 { padding-bottom:75px; }
.pdb80 { padding-bottom:80px; }
.pdb85 { padding-bottom:85px; }
.pdb90 { padding-bottom:90px; }
.pdb95 { padding-bottom:95px; }
.pdb100 { padding-bottom:100px; }
.pdb150 { padding-bottom:150px; }
.pdb200 { padding-bottom:200px; }
.pdb250 { padding-bottom:250px; }
.pdb300 { padding-bottom:300px; }

.pdt0 { padding-top:0px; }
.pdt5 { padding-top:5px; }
.pdt10 { padding-top:10px; }
.pdt15 { padding-top:15px; }
.pdt20 { padding-top:20px; }
.pdt25 { padding-top:25px; }
.pdt30 { padding-top:30px; }
.pdt35 { padding-top:35px; }
.pdt40 { padding-top:40px; }
.pdt45 { padding-top:45px; }
.pdt50 { padding-top:50px; }
.pdt55 { padding-top:55px; }
.pdt60 { padding-top:60px; }
.pdt65 { padding-top:65px; }
.pdt70 { padding-top:70px; }
.pdt75 { padding-top:75px; }
.pdt80 { padding-top:80px; }
.pdt85 { padding-top:85px; }
.pdt90 { padding-top:90px; }
.pdt95 { padding-top:95px; }
.pdt100 { padding-top:100px; }
.pdt150 { padding-top:150px; }
.pdt200 { padding-top:200px; }
.pdt250 { padding-top:250px; }
.pdt300 { padding-top:300px; }

.pdl0 { padding-left:0px; }
.pdl5 { padding-left:5px; }
.pdl10 { padding-left:10px; }
.pdl15 { padding-left:15px; }
.pdl20 { padding-left:20px; }
.pdl25 { padding-left:25px; }
.pdl30 { padding-left:30px; }
.pdl35 { padding-left:35px; }
.pdl40 { padding-left:40px; }
.pdl45 { padding-left:45px; }
.pdl50 { padding-left:50px; }
.pdl55 { padding-left:55px; }
.pdl60 { padding-left:60px; }
.pdl65 { padding-left:65px; }
.pdl70 { padding-left:70px; }
.pdl75 { padding-left:75px; }
.pdl80 { padding-left:80px; }
.pdl85 { padding-left:85px; }
.pdl90 { padding-left:90px; }
.pdl95 { padding-left:95px; }
.pdl100 { padding-left:100px; }
.pdl150 { padding-left:150px; }
.pdl200 { padding-left:200px; }
.pdl250 { padding-left:250px; }
.pdl300 { padding-left:300px; }

.pdr0 { padding-right:0px; }
.pdr5 { padding-right:5px; }
.pdr10 { padding-right:10px; }
.pdr15 { padding-right:15px; }
.pdr20 { padding-right:20px; }
.pdr25 { padding-right:25px; }
.pdr30 { padding-right:30px; }
.pdr35 { padding-right:35px; }
.pdr40 { padding-right:40px; }
.pdr45 { padding-right:45px; }
.pdr50 { padding-right:50px; }
.pdr55 { padding-right:55px; }
.pdr60 { padding-right:60px; }
.pdr65 { padding-right:65px; }
.pdr70 { padding-right:70px; }
.pdr75 { padding-right:75px; }
.pdr80 { padding-right:80px; }
.pdr85 { padding-right:85px; }
.pdr90 { padding-right:90px; }
.pdr95 { padding-right:95px; }
.pdr100 { padding-right:100px; }
.pdr150 { padding-right:150px; }
.pdr200 { padding-right:200px; }
.pdr250 { padding-right:250px; }
.pdr300 { padding-right:300px; }

.pdlr0 { padding-left:0px; padding-right:0px; }
.pdlr5 { padding-left:5px; padding-right:5px; }
.pdlr10 { padding-left:10px; padding-right:10px; }
.pdlr15 { padding-left:15px; padding-right:15px; }
.pdlr20 { padding-left:20px; padding-right:20px; }
.pdlr25 { padding-left:25px; padding-right:25px; }
.pdlr30 { padding-left:30px; padding-right:30px; }
.pdlr35 { padding-left:35px; padding-right:35px; }
.pdlr40 { padding-left:40px; padding-right:40px; }
.pdlr45 { padding-left:45px; padding-right:45px; }
.pdlr50 { padding-left:50px; padding-right:50px; }
.pdlr55 { padding-left:55px; padding-right:55px; }
.pdlr60 { padding-left:60px; padding-right:60px; }
.pdlr65 { padding-left:65px; padding-right:65px; }
.pdlr70 { padding-left:70px; padding-right:70px; }
.pdlr75 { padding-left:75px; padding-right:75px; }
.pdlr80 { padding-left:80px; padding-right:80px; }
.pdlr85 { padding-left:85px; padding-right:85px; }
.pdlr90 { padding-left:90px; padding-right:90px; }
.pdlr95 { padding-left:95px; padding-right:95px; }
.pdlr100 { padding-left:100px; padding-right:100px; }
.pdlr150 { padding-left:150px; padding-right:150px; }
.pdlr200 { padding-left:200px; padding-right:200px; }
.pdlr250 { padding-left:250px; padding-right:250px; }
.pdlr300 { padding-left:300px; padding-right:300px; }

.pdtb0 { padding-top:0px; padding-bottom:0px; }
.pdtb5 { padding-top:5px; padding-bottom:5px; }
.pdtb10 { padding-top:10px; padding-bottom:10px; }
.pdtb15 { padding-top:15px; padding-bottom:15px; }
.pdtb20 { padding-top:20px; padding-bottom:20px; }
.pdtb25 { padding-top:25px; padding-bottom:25px; }
.pdtb30 { padding-top:30px; padding-bottom:30px; }
.pdtb35 { padding-top:35px; padding-bottom:35px; }
.pdtb40 { padding-top:40px; padding-bottom:40px; }
.pdtb45 { padding-top:45px; padding-bottom:45px; }
.pdtb50 { padding-top:50px; padding-bottom:50px; }
.pdtb55 { padding-top:55px; padding-bottom:55px; }
.pdtb60 { padding-top:60px; padding-bottom:60px; }
.pdtb65 { padding-top:65px; padding-bottom:65px; }
.pdtb70 { padding-top:70px; padding-bottom:70px; }
.pdtb75 { padding-top:75px; padding-bottom:75px; }
.pdtb80 { padding-top:80px; padding-bottom:80px; }
.pdtb85 { padding-top:85px; padding-bottom:85px; }
.pdtb90 { padding-top:90px; padding-bottom:90px; }
.pdtb95 { padding-top:95px; padding-bottom:95px; }
.pdtb100 { padding-top:100px; padding-bottom:100px; }
.pdtb150 { padding-top:150px; padding-bottom:150px; }
.pdtb200 { padding-top:200px; padding-bottom:200px; }
.pdtb250 { padding-top:250px; padding-bottom:250px; }
.pdtb300 { padding-top:300px; padding-bottom:300px; }



/*
---------------------------
    additional-settings
---------------------------
*/
.pic { vertical-align:bottom; }
.f-left { float:left; }
.f-right { float:right; }
.txt-left { text-align:left; }
.txt-right { text-align:right; }
.txt-center { text-align:center; }
.f-color-red { color:red; }
.f-color-black { color:#000; }
.f-color-white { color:#fff; -webkit-font-smoothing: antialiased; }
.f-color-orange { color:#fd7800; -webkit-font-smoothing: antialiased; }
.f-color-666 { color:#666666; -webkit-font-smoothing: antialiased; }
.f-color-gray { color:#757575; }
.f-color-gold { color:#be9e5b; }
.f-color-lightgreen { color:#23584b; -webkit-font-smoothing: antialiased; }
.block-center { margin-left:auto; margin-right:auto; }
.nowrap { white-space:nowrap; }
.kerning { letter-spacing:-.08em; }
.w100 { width:100%; }
.h100 { height:100%; }
.bold { font-weight:bold; -webkit-font-smoothing: antialiased; }
.inblock { display:inline-block; }
.border-box { box-sizing:border-box; }
.bg-black { background-color:#000; }
.bg-red { background-color:#c30012; }
.bg-white { background-color:#fff; }
.bg-green { background-color:#e8f2e6; }
.bg-beige { background-color:#e6e5db; }
.bg-beige-light { background-color:#efefeb; }
.border-ccc { border:1px solid #cccccc; }
.border-b-ccc { border-bottom:1px solid #cccccc; }



/*
---------------------------
    inline picture
---------------------------
*/
span.pic:not([class*="-hide"]) { display:inline-block; width:100%; height:100%; background-repeat:no-repeat; }
span.pic.with-alt { font-size:0px; text-indent:-99999px; overflow:hidden; }


/*
---------------------------
        icons
---------------------------
*/
a[class*="with-"],
span[class*="with-"] { display:inline-block; position:relative;}

.with-arrow {
	padding-left: 20px;
	position: relative;
}
.with-arrow:after,
.with-arrow.arrow-green:after {
	content: '';
	width: 10px;
	height: 9px;
	position: absolute;
	top:.5em;
	left:0;
	/*margin-top:-5px;*/
	background-position: -5px -41px;
	background-size: 250px 250px;	
}
.with-arrow.arrow-white:after {
	background-position: -95px -91px;
}

a[href*=".pdf"],
a[target="_blank"]:not([href*=".pdf"]) { position:relative; }

a[href*=".pdf"]:after,
a[target="_blank"]:not(.icon-zoom):after {
	content:"";
	display:inline-block;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:right center;
	position:relative;
	padding-left:3px;
	vertical-align:middle;
	top:50%;
}
/* a[target="_blank"]:after {
	width:17px;
	height:14px;
	background-image:url(/common/img/shared/icon-newwindow.png);
	background-size:17px 14px;
	margin-top:-3px;
} */
a.noicon[target='_blank']:after{
	content:none;
}
.file-size-off .pdfsize {
  display: none;
}


/*
---------------------------
          header
---------------------------
*/
header .inner { height:100%; }
header .upper .logo,
header .upper .buttons { height:100%; }
header .button { height:45px; }



/*
---------------------------
          table
---------------------------
*/
.va-m { vertical-align:middle; }
.va-t { vertical-align:top; }
.va-b { vertical-align:bottom; }

.table { display:table; }
.table > .t-row { display:table-row; }
.table > .t-cell,
.table > .t-row > .t-cell { display:table-cell; height:100%; }
/*.table > .t-cell.va-m { vertical-align:middle; }*/
/*.table > .t-cell.va-t { vertical-align:top; }*/
/*.table > .t-cell.va-b { vertical-align:bottom; }*/



/*
---------------------------
          button
---------------------------
*/
.button { display:table; box-sizing:border-box; }
.button > * { display:table-cell; height:100%; /*line-height:100%;*/ text-decoration:none; vertical-align:middle; border-radius:4px; }
.button.lh140 > * { line-height:140%; }
.button > *.va-m { vertical-align:middle; }
.button > * span { display:inline-block; position:relative; }
.button > * span:after {
	content:'';
	display:inline-block;
}
.button > * .sub { font-size:80%; display:block; }



/*
---------------------------
        grid-rayout
---------------------------
*/
.grid > .grid-wrapper > *,
.grid > *:not(.grid-wrapper) { float:left; }



/*
---------------------------
		  bullet
---------------------------
*/
.bullets > *:not(.bullets-wrapper),
.bullets > .bullets-wrapper > * { display:inline-block; }
.bullets.with-border > * + * { border-left:1px solid #aaa; }



/*
---------------------------
	   page specific
---------------------------
*/
/*header .inner { padding-top:16px; padding-bottom:17px; }*/
.f-normal { font-weight:normal; }
header > .inner { display:table; width:100%; box-sizing:border-box; }
header > .inner > * { display:table-cell; vertical-align:middle; }
header + nav { box-sizing:border-box; }
.home header + nav.content-nav { display: none;}
header + nav ul,
header + nav ul li { margin:0; padding:0; }
header + nav a,
header + nav a:visited {color:#000; text-decoration:none; }
header + nav a:hover { opacity:.5; text-decoration:none; }

footer ol { margin:0; padding:0; }
footer ol li { list-style:none; }

footer li a { text-decoration:none; }
footer li a:hover { text-decoration:underline; }


footer .breadclumbs ol li span {
	position:relative;
	vertical-align:middle;
}
footer .breadclumbs ol li.home span {
	padding-left:20px;
}
footer .breadclumbs ol li span:before {
	content: ">";
	display:inline-block;
	position:absolute;
	left:0px;
	top:50%;
}

.footer-copyright { background-color:#e6e8eb; }

.pagetop {
	display:none;
	visibility:visible;
	opacity:1;
}

html.ualoaded .pagetop {
	display:block;
}

.pagetop a:before {
    content: "";
    display: inline-block;
    background-image: url(/common/img/p/icon-nav-top.png);
    background-size:contain;
    width: 9px;
    height: 8px;
    position:relative;
    margin-right:6px;
    visibility:visible;
    opacity:1;
}

html[class*="ios"] .pagetop,
html[class*="android"] .pagetop {
	display:block;
	position:fixed;
	box-sizing:border-box;
	bottom:30px;
	right:10px;
	visibility:hidden;
	opacity:0;
	transition:all .3s ease-out;
	z-index:20;
}

html[class*="ios"] .pagetop a,
html[class*="android"] .pagetop a {
	display:inline-block;
	width:40px;
	height:40px;
	text-indent:-99999px;
	font-size:0px;
	overflow:hidden;
	border-radius: 5px;
	background-image:url(/common/img/s/icon-nav-top-btn.png);
	background-size:contain;
}

html[class*="ios"] .pagetop a:before,
html[class*="android"] .pagetop a:before {
	content:none;
}

html[class*="ios"] .pagetop.is-show,
html[class*="android"] .pagetop.is-show {
	opacity:.3;
	visibility:visible;
}

.indicator {
	position:relative;
}
.indicator:after {
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0px;
	left:0px;

	border-radius:10px;

	animation-name: indicator;
	animation-duration: 1s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	animation-iteration-count: 1;
	animation-delay: .5s;
}

@keyframes indicator {
	  0% { transform:scale(1); background-color:#fed900; }
	 20% { transform:scale(1.08);  opacity:.5; }
	100% { transform:scale(1.2); background-color:#fed900; opacity:0; }
}

.floating-banner-wrapper {
	width:100%;
	position:fixed;
	opacity:0;
	visibility:hidden;
	z-index:40;
	bottom:0px;
}

.floating-banner {
	position:relative;
	border-radius: 5px 5px 0 0 / 5px 5px 0 0;
}


.floating-banner .banner-close {
	display:table;
	position:absolute;
	top:10px;
	right:10px;
}
.floating-banner .banner-close .pic {
	display:table-cell;
	background-size:contain;
}

.floating-banner .button {
	height:auto;
}

.floating-banner .button a {
	border-radius:3px;
	border:1px solid #4788ee;
	background-color:#4788ee;
	transition:background-color .3s ease-out;
	color:#fff;
	padding-left:19px;
	padding-right:19px;
	text-align: center;
	font-size: 87.5%;
	font-weight: bold;
	line-height:100%;
	box-sizing: border-box;
}

.floating-banner .button a:hover {
	border-radius:3px;
	border-color:#407bd8;
	background-color:#407bd8;
}

.floating-banner .button > a:hover,
.floating-banner .button > a:active {
	text-decoration: none;
}
