@charset "utf-8";


/* ==========================================

  “Common” CSS

========================================== */


/* default 
========================================== */
*		 {	-webkit-box-sizing:border-box;-moz-box-sizing: border-box; box-sizing:border-box;}

html	{	background:#fff; height:100%;}

body	{	color:#000; line-height:1; height:100%;
			font-size:62.5%;
			font-family:'メイリオ',Meiryo,"ＭＳ Ｐゴシック","MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;
			position:relative;}

@media print {
	body	{	width:1120px;}
}



	/* Text Module
	---------------------------------------- */
	em 		{	font-style:normal;}
	strong	{	font-weight: bold;}
	.textC	{	text-align:center;}
	.textR	{	text-align:right;}



	/* font (base14)
	----------------------------------------*/
	.plus-2em	{	font-size:0.857em;}
	.plus-1em	{	font-size:0.929em;}
	.plus1em	{	font-size:1.071em;}
	.plus2em	{	font-size:1.143em;}
	.plus3em	{	font-size:1.214em;}
	.plus4em	{	font-size:1.286em;}
	.plus5em	{	font-size:1.357em;}
	.plus6em	{	font-size:1.429em;}
	

	/* Hypertext Module
	---------------------------------------- */
	a			{	text-decoration:none;}
	a:link		{	color:#0077ae;	}
	a:visited	{	color:#0077ae;	}
	a:hover,
	a:active	{	color:#4661ca;	}


	/* Image Module
	---------------------------------------- */
	img 		{	vertical-align:top; font-size:0; line-height:0; width:100%; height:auto;}



	/* Float
	----------------------------------------*/
	.clearfix:after	{	content:""; clear:both; display:block; height:0;}



/* Header & Nav(smartmenus)
========================================== */
header		{	width:100%; position:fixed; top:0; left:0; z-index:10;
				box-shadow:0px 0px 6px 1px #cccccc;
				-moz-box-shadow:0px 0px 6px 1px #cccccc;
				-webkit-box-shadow:0px 0px 6px 1px #cccccc;
			}

.nav-brand					{	position:absolute; top:0; left:0; width:100%; padding:10px 40px 10px 0; background:#fff;}
.nav-brand a				{	display:block; padding:0 0 0 10px;}
.nav-brand a img			{	width:100px;}

#main-menu					{	clear:both; background:#fff;}

header .rNav				{	position:absolute; top:10px; left:120px;}
header .rNav li				{	text-align:center; margin-top:3px; display:block; }
header .rNav li a			{	font-size:15px; display:block; background:#c9defa; color:#000; padding:5px 10px;}

@media print, screen and (min-width:380px) {
header .rNav				{	top:40px;}
header .rNav li				{	display:inline-block; }
}
@media print, screen and (min-width:720px) {
header						{	position:fixed; padding:0; top:0; left:0; background:#fff;}
header div					{	width:94%; max-width:1120px; margin:0 auto; position:relative;}	

.nav-brand 					{	position:relative; width:140px; padding:10px 0 15px; z-index:20; }
.nav-brand a				{	display:inline-block; background:#fff; position:relative; z-index:30;}
.nav-brand a img			{	width:140px;}
	
#main-menu					{	float:none; background:transparent; width:auto;
								position:absolute; bottom:0; left:0; padding:0 0 0 180px; width:100%; z-index:19;}

header .rNav				{	bottom:auto; left:auto; top:0; right:0; display:table;}
header .rNav li				{	display:table-cell; height:36px; width:auto; margin-top:0;}
header .rNav li a			{	display:table; padding:0;}
header .rNav li a span		{	display:table-cell; font-size:16px; padding:0 14px; vertical-align:middle;}
header .rNav li a:before	{	content:""; display:table-cell; width:36px; height:36px;
								background-image:url(../_img/icon_mail.png); background-repeat:no-repeat;
								background-color:#11468e; background-position:center center;
								background-size:80% auto; -webkit-background-size:80% auto; -moz-background-size:80% auto;}
header .rNav li:first-child a:before	{	background-image:url(../_img/icon_member.png);}
header .rNav li a:hover					{	background:#e0ebfa;}
header .rNav li a:hover:before			{	background-color:#719ed2;}
}


	/* Mobile menu toggle button
	----------------------------------------*/
	.main-menu-btn	{	float:right; margin:20px 10px 29px; position:relative; display:block;
						width:29px; height:29px; text-indent:29px; white-space:nowrap; overflow:hidden; cursor:pointer;
						-webkit-tap-highlight-color:rgba(0, 0, 0, 0); z-index:10;}

	/* hamburger icon
	----------------------------------------*/
	.main-menu-btn-icon,
	.main-menu-btn-icon:before,
	.main-menu-btn-icon:after 	{	position:absolute; top:50%; left:2px; height:2px; width:24px; background:#2838bb;
									-webkit-transition:all 0.25s; transition:all 0.25s; }
	.main-menu-btn-icon:before	{	content:''; top:-7px; left:0; }
	.main-menu-btn-icon:after	{	content:''; top:7px; left:0; }

	/* x icon
	----------------------------------------*/
	#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon		{	height:0; background:transparent; }
	#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{	top:0; -webkit-transform:rotate(-45deg); transform:rotate(-45deg); }
	#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after	{	top:0; -webkit-transform:rotate(45deg); transform:rotate(45deg); }


	/* hide menu state checkbox (keep it visible to screen readers)
	----------------------------------------*/
	#main-menu-state	{	position:absolute; width:1px; height:1px; margin:-1px; border:0; padding:0; overflow:hidden;
							clip:rect(1px, 1px, 1px, 1px); }


	/* hide the menu in mobile view
	----------------------------------------*/
	#main-menu-state:not(:checked) ~ #main-menu {	display:none; }
	#main-menu-state:checked ~ #main-menu		{	display:block; }


@media print, screen and (min-width:720px) {
  /* hide the button in desktop view */
  .main-menu-btn	{	position: absolute; top:-99999px;}
  
  /* always show the menu in desktop view */
  #main-menu-state:not(:checked) ~ #main-menu	{	display: block;}
}





/* Footer
========================================== */
footer					{	background:#11468e; padding:20px 0;}
footer nav				{	display:none;}

footer .address			{	display:block; width:94%; margin:0 auto;}
footer .address	p				{	display:block; width:100%; text-align:right; color:#fff; font-size:1.2em; line-height:1.5;}
footer .address	p:first-child	{	text-align:left;}
footer .address	p:first-child strong	{	font-size:125%;}
footer .address	p:first-child span		{	display:inline-block; padding-right:1em;}


@media print, screen and (min-width:720px) {
footer nav				{	width:94%; max-width:1120px; margin:0 auto; display:block; font-size:15px;}
footer nav > ul > li	{	float:left; width:20%; padding:0 5px; }
footer nav > ul > li:nth-child(1)	{	padding-left:0; width:13%;}
footer nav > ul > li:nth-child(2)	{	width:23%;}
footer nav > ul > li:nth-child(3)	{	width:22%;}
footer nav > ul > li:nth-child(5),
footer nav > ul > li:nth-child(6)	{	padding-right:0;}
footer nav > ul > li a	{	display:block; color:#fff; line-height:1.4;  }
footer nav > ul > li a:link		{	color:#fff;	}
footer nav > ul > li a:visited	{	color:#fff;	}
footer nav > ul > li a:hover,
footer nav > ul > li a:active		{	color:#fff; text-decoration:underline;	}
footer nav > ul > li > a	{	border-bottom:3px solid #305e9d; padding:5px;}
footer nav > ul > li ul		{	padding-top:10px;}
footer nav > ul > li li a	{	font-size:84.6%; padding-left:5px;}

footer .address			{	margin-top:20px;}
footer .address	p		{	font-size:1.3em;}	
}
@media print, screen and (min-width:920px) {
footer nav > ul > li:nth-child(1)	{	width:20%;}
footer nav > ul > li:nth-child(2)	{	width:20%;}
footer nav > ul > li:nth-child(3)	{	width:20%;}
footer .address						{	display:table; max-width:1120px;}
footer .address	p					{	display:table-cell; width:40%; text-align:right; vertical-align:bottom; font-size:1.4em;}
footer .address	p:first-child		{	width:60%;}
footer .address	p:first-child strong	{	font-size:15px;}
}



/* Pagetop
========================================== */
#pageTop				{	width:100%; margin:0 auto; margin-top:20px;}
#pageTop a				{	display:table; background:#c9defa; color:#000; margin:0 0 0 auto;}
#pageTop a span			{	display:table-cell; font-size:14px; padding:0 14px; vertical-align:middle;}
#pageTop a:before		{	content:""; display:table-cell; width:36px; height:36px;
							background-image:url(../_img/icon_toparrow.png); background-repeat:no-repeat;
							background-color:#11468e; background-position:center center;
							background-size:80% auto; -webkit-background-size:80% auto; -moz-background-size:80% auto;}
#pageTop a:hover		{	background:#e0ebfa;}
#pageTop a:hover:before	{	background-color:#719ed2;}


@media print, screen and (min-width:720px) {
#pageTop				{	width:94%; max-width:1120px; margin-top:50px;} 
#pageTop a span			{	font-size:16px;}
}


/* Content　Base(2nd pages)
========================================== */

	/* wrapper etc..
	---------------------------------------- */
	main 				{	padding-top:78px; position:relative;}
	main .contIn		{	width:94%; max-width:1120px; margin:0 auto; line-height:1.5; font-size:14px;}
	main .contIn p		{	margin:1em 0;}

	@media print, screen and (min-width:600px) {
	main				{	padding-top:105px;}
	main .contIn		{	font-size:16px;}
	}

	@media print, screen and (min-width:920px) {
	main				{	padding-top:105px;}
	main .contIn		{	font-size:18px;}
	}

	/* title
	----------------------------------------*/
	.ttlA			{	font-size:21px; color:#464646; font-weight:bold; line-height:1.2;
						margin-top:2em; text-align:center;
						position:relative; border-left:1px solid #ccc; border-right:1px solid #ccc; padding:10px 0;}
	.ttlA:after		{	content:""; width:100%; height:16px; background:#efefef; position:absolute; top:50%; left:0; z-index:-1; margin-top:-8px;}
	.ttlA.ls1		{	letter-spacing:-1px;}
	
	.ttlB			{	border:solid #464646; border-width:1px 0; color:#464646; font-size:19px; text-align:center; padding:5px 0; margin-top:1.5em;}
	.ttlB em		{	border-top:1px dotted #464646; padding:5px 0 0 0; font-size:16px; font-weight:normal; display:block;}

	
	.ttl2ndTop		{	padding:10px 0; text-align:center;
						background:url(../_img/23426772.jpg) no-repeat center right #f8f8f8;
						background-size:50% auto; -webkit-background-size:50% auto; -moz-background-size:50% auto;}
	.ttl2ndTop span	{	width:94%; max-width:1120px; margin:0 auto; font-size:24px; display:block; font-weight:normal; line-height:1.5;}
	.ttl2ndTop span em	{	display:block;
							text-shadow:
							#fff 2px 0px 0px, #fff -2px 0px 0px,
							#fff 0px -2px 0px, #fff 0px 2px 0px,
							#fff 2px 2px 0px, #fff -2px 2px 0px,
							#fff 2px -2px 0px, #fff -2px -2px 0px,
							#fff 1px 2px 0px, #fff -1px 2px 0px,
							#fff 1px -2px 0px, #fff -1px -2px 0px,
							#fff 2px 1px 0px, #fff -2px 1px 0px,
							#fff 2px -1px 0px, #fff -2px -1px 0px,
							#fff 1px 1px 0px, #fff -1px 1px 0px,
							#fff 1px -1px 0px, #fff -1px -1px 0px;}
	.ttl2ndTop span em:first-child	{	font-size:14px;}
	.ttl2ndTop span em:last-child	{	line-height:1.2; margin-top:5px;}
	
	.ttl2ndTop.one em:first-child	{	font-size:inherit; padding:0.55em 0;}

	
	@media print, screen and (min-width:600px) {
	.ttlA		{	font-size:27px;}
	.ttlA.ls1	{	letter-spacing:0;}
	
	.ttlB		{	font-size:25px;}
	
	.ttl2ndTop		{	margin-bottom:30px;}
	.ttl2ndTop span	{	font-size:29px;}
	.ttl2ndTop span em:first-child	{	font-size:19px;}
	}

	@media print, screen and (min-width:920px) {
	.ttlA	{	font-size:32px;}
	.ttlB	{	font-size:30px;}
	.ttl2ndTop span	{	font-size:34px;}
	.ttl2ndTop span em:first-child	{	font-size:24px;}
	}

	/* menu2nd
	---------------------------------------- */
	p.menu2ndBtn					{	background:#efefef; color:#000; padding:10px 40px 10px 10px; position:relative; line-height:1; font-size:15px;
										margin:15px 0 0 0!important; font-weight:bold;}
	p.menu2ndBtn:after				{	content:"＋"; position:absolute; top:50%; right:10px; display:inline-block; font-size:30px;
										margin-top:-15px; font-weight:normal;}
	p.menu2ndBtn.active:after		{	content:"－"}
	ul.menu2nd						{	display:none;}
	ul.menu2nd li					{	border:solid #bbb; border-width:0 0 1px 0}
	ul.menu2nd li:first-child		{	border-top-width:1px;}
	ul.menu2nd li a					{	display:block; background:#efefef; color:#000; padding:10px; font-size:15px;}

	@media print, screen and (min-width:920px) {
		p.menu2ndBtn		{	display:none;}
		ul.menu2nd			{	display:block; margin:40px 0; text-align:center; padding:10px; font-size:0; line-height:0;}
		ul.menu2nd li		{	border:0; display:inline-block; margin:0; border-right:1px solid #ccc;}
		ul.menu2nd li:first-child	{	border-left:1px solid #ccc;}
		ul.menu2nd li a		{	background:#fff; padding:5px 20px; font-size:18px; line-height:1;}
		ul.menu2nd li a:hover	{	background:#f8f8f8;}
	}

	/* list
	---------------------------------------- */
	.listDot 	{	margin:1em 0;}
	.listDot li	{	list-style:disc; margin:0 0 0 1.5em;}
	
	.listCom	{	padding-left:1em; margin:1em 0;}
	.listCom li	{	text-indent:-1em;}
	
	.listOpMb1 li	{	margin-bottom:1em;}

	@media print, screen and (min-width:920px) {
	.listDot.w700		{	margin:1em auto; max-width:700px;}
	}

	/* btns
	----------------------------------------*/
	.btn			{	background:#c9defa; padding:10px 5px; display:block; text-align:center; position:relative; font-weight:bold;}
	.btn:link		{	color:#000;	}
	.btn:visited	{	color:#000;	}
	.btn:hover,
	.btn:active		{	color:#000; background:#e0ebfa;}
	.btn span		{	display:inline-block;}
	
	.btn.colRd			{	background:#c00000;}
	.btn.colRd:link		{	color:#fff;	}
	.btn.colRd:visited	{	color:#fff;	}
	.btn.colRd:hover,
	.btn.colRd:active	{	color:#fff; background:#cf3333;}
	
	@media print, screen and (min-width:600px) {
	.btn	{	display:inline-block; padding:10px 20px;}
	}

	/* getAcrobatCommon	
	---------------------------------------- */
	.getAcrobatCommon			{	text-align:center; padding:10px; margin-top:10px; width:100%; border:1px solid #ccc;}
	.getAcrobatCommon a img		{	max-width:158px;}
	.getAcrobatCommon p			{	font-size:0.786em; margin:10px 0 0 0;}	
	.getAcrobatCommon p br		{	display:none;}

	@media print, screen and (min-width:600px) {
		.getAcrobatCommon			{	display:table; margin:15px auto; }
		.getAcrobatCommon a		{	display:table-cell; vertical-align:top; width:158px; vertical-align:middle; }
		.getAcrobatCommon a img	{	width:100%; height:auto; }
		.getAcrobatCommon p		{	display:table-cell; vertical-align:middle; padding-left:15px; text-align:left; line-height:1.2;}
	}

	@media print, screen and (min-width:940px) {
		.getAcrobatCommon p br{	display:block;}
	}


/* blank
========================================== */
.mT0	{	margin-top:0!important;}
.mT05em	{	margin-top:0.5em!important;}
.mT1em	{	margin-top:1em!important;}
.mT2em	{	margin-top:2em!important;}
.mL		{	margin-left:auto;}
.mR		{	margin-right:auto;}

