@charset "utf-8";
/*===============================================================
	
	2016/6/6
	
===============================================================*/

/* 初期化
----------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	outline: none;
}
blockquote, q {	quotes: none;	}
blockquote:before, blockquote:after,
q:before, q:after {	content: '';	content: none;}
input, textarea { margin: 0;	padding: 0;}
table{	border-collapse: collapse; border-spacing:0;	}
body { font-family:'Hiragino Kaku Gothic Pro','メイリオ','Meiryo','ＭＳ Ｐゴシック',Osaka,sans-serif; }
h1,h2,h3,h4,h5,h6,p,li,th,td,dt,dd { font-size:14px; line-height:22px; }
caption,th,td { text-align:left; vertical-align:top; }
img { vertical-align:top; border:0; }
ul,li { list-style:none; }
option { padding-right:1em; }
address,caption { font-style:normal; font-weight:normal; }
a {	outline:none;	text-decoration:underline; }
a:focus {	outline:none;	}
ul a ,li a {	zoom:1;	}

/* HTML5
----------------------------------------------------------------*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/* 文字サイズ、装飾
----------------------------------------------------------------*/
.bold	{	font-weight:bold; }
.cap {
	font-size:12px;
	line-height:15px;
	}		
.red	{	color:#943023;		}
.yellow	{	color:#cbb847;		}
.blue	{	color:#0047a2;		}
.lightblue { color:#00afd7; }
.green	{	color:#5b9000;	}
.brown	{	color:#633;		}
.pink	{	color:#f3c;		}
.gray	{	color:#eaeeed;		}
.deepgray { color:#92999f ;}
.align_center	{	text-align:center;		}
.align_right	{	text-align:right;		}
.replace {	overflow:hidden;	white-space:nowrap;	text-indent:100%;	}

/* フロート関係
----------------------------------------------------------------*/
.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	clear:both;
}
.cf:before,
.cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
  *zoom: 1;
}
.flol {
	float:left;
}
.flor {
	float:right;
}
/* マージン
----------------------------------------------------------------*/
.mt0	{	margin-top:0px !important; }
.mt05	{	margin-top:5px;		}
.mt10	{	margin-top:10px;	}
.mt15	{	margin-top:15px;	}
.mt20	{	margin-top:20px;	}
.mt25	{	margin-top:25px;	}
.mt30	{	margin-top:30px;	}
.mt40	{	margin-top:40px;	}
.mt50	{	margin-top:50px;	}
.mt60	{	margin-top:60px;	}
.mt70	{	margin-top:70px;	}
.mt80	{	margin-top:80px;	}
.mt90	{	margin-top:90px;	}
.mt100	{	margin-top:100px;	}

.mb05	{	margin-bottom:5px;	}
.mb10	{	margin-bottom:10px;	}
.mb15	{	margin-bottom:15px;	}
.mb20	{	margin-bottom:20px;	}
.mb25	{	margin-bottom:25px;	}
.mb30	{	margin-bottom:30px;	}
.mb40	{	margin-bottom:40px;	}
.mb50	{	margin-bottom:50px;	}

/* html/body設定
----------------------------------------------------------------*/
html {
}
body {
	width:100%;
	color:#000;
	background:#003b77;
	text-align:left;
	font-size:14px;
	line-height:25px;
	-webkit-text-size-adjust:none; /* 縦横文字サイズ同じ */
	-webkit-font-smoothing: antialiased;
}
a {
	color:#003b77;
	-webkit-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-ms-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;  
	-moz-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-o-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
}
a:hover { color:#0056ae }

.boxshadow {
	box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-moz-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-webkit-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～640px */
@media only screen and (max-width: 736px) {
}	/* for SP max-width: 736px */

/*===============================================================
	
	基本文字サイズ
	
===============================================================*/
h2 {
	/*font-size:172%;	/* 24px */
	font-weight:bold;
}
h3 {
	/*font-size:172%;	/* 24px */
	font-weight:bold;
}
h4 {
	/*font-size:115%;	/* 16px */
	line-height:1.4;
	font-weight:bold;
}
p {
	/*font-size:100%;	/* 14px */
	line-height:1.8;
}
sup {
	margin:0;
	padding:0;
	font-size:11px;
	line-height:15px;
}
/*===============================================================
	
	PC/SP/TABLET
	
===============================================================*/

.pc {
}
.tablet {
	display:none;
}
.sp {
	display:none;
}
.sp2 {
	display:none;
}
.sp_tablet {
	display:none;
}
.none {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pc {
	display:none;
}
.tablet,
.pc_tablet,
.sp_tablet {
	display:block;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.sp {
	display:block;
}
.pc_tablet,
.tablet {
	display:none;
}
}	/* for SP max-width: 736px */

/* SP向けレイアウトの指定：～350px */
@media only screen and (max-width: 350px) {
	
.sp2 {
	display:block;
}

}	/* for SP max-width: 350px */

/*===============================================================
	
	img fig
	
===============================================================*/
.fig img,
.fitimg img, 
.photo img {
	width:100%;
	height:auto;
}

.fig {
	border:solid 1px #ddd;
}
.content .fig {
	margin-top:30px;
}
.border {
	border:solid 1px #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content .fig {
	margin-top:15px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	レイアウト
	
===============================================================*/
.wrapper {
}
.content_width {
	width:960px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.narrow_width {
	width:700px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.content_width {
	width:100%;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.narrow_width {
	width:100%;
}
}	/* for SP max-width: 736px */
/*===============================================================
	
	ヘッダー
	
===============================================================*/
.header_wrp {
	width:100%;
	background:#fff;
	padding-bottom:10px;
}
.header {
	width:100%;
	height:75px;
	position:relative;
}
.header .logo {
	position:absolute;
	width:130px;
	bottom:0;
	left:0;
}
.header .logo img {
	width:100%;height:auto;
}
.header .lang {
	position:absolute;
	width:auto;
	height:20px;
	top:10px;
	right:0;
}
.header .lang .langlist {
}
.header .lang .langlist li {
	float:left;
	margin-left:25px;
	font-size:14px;
	line-height:20px;
}
.header .lang .langlist li a {
	text-decoration:none;
	color:#333;
	padding-bottom:3px;
}
.header .lang .langlist li a:hover {
	border-bottom:solid 1px #003b77;
}
.header .lang .langlist li.current a {
	border-bottom:solid 1px #003b77;
}
.header .search {
	position:absolute;
	width:auto;
	bottom:0;
	right:0;
	background:url(../images/icon_search.png) no-repeat left center;
	padding-left:25px;
}
.header .search form {
	vertical-align: top;
}
.header .search input {
	width:200px;
	height: 30px;
	color:#000;
	font-size:14px;
	line-height:20px;
	padding:4px 5px;
	border:1px solid #bfbfbf;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	vertical-align: top;
}
.header .search .btn {
	display:inline-block;
	margin-left:5px;
}
.header .search .btn a ,
.header .search .btn input {
	display:block;
	color:#fff;
	font-size:16px;
	line-height:20px;
	text-align:center;
	text-decoration:none;
	padding:5px;
	background:#003b77;
	border: 0;
	width: auto;
	cursor: pointer;
	height: 30px;
}
.header .search .btn a:hover ,
.header .search .btn input:hover {
	background:#004a96;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	
.header_wrp {
	height:50px;
	padding-bottom:0;
}
.header {
	width:100%;
	height:50px;
	position:fixed;
	background:#fff;
	z-index:500;
	/*box-shadow:0px 0px 3px rgba(0, 0, 0, 0.20);*/
}
.header .logo {
	position:static;
	width:75px;
	margin:0 auto;
	padding-top:16px;
}
.header .lang {
	display:none;
}
.header .search {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	navigation
	
===============================================================*/
.navigation_outer {
	width:100%;
	height:50px;
}
.navigation_wrp {
	width:100%;
	position:relative;
	background:#fff;
	z-index:999;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.navigation_outer {
	width:100%;
	height:0;
	margin-top:0;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	navigation	
-------------------------------------------------------------*/
.navigation {
}
.navigation ul {
	width:100%;
}
.navigation ul li {
	width:20%;
	float:left;
	position:relative;
}
.navigation ul li a {
	display:block;
	color:#333;
	font-size:16px;
	line-height:49px;
	font-weight:bold;
	text-align:center;
	text-decoration:none;
	border-bottom:solid 1px #fff;
}
.navigation ul li a:hover,
.navigation ul li.current a {
	border-bottom:solid 1px #003b77;
}
.navigation .navlist .sp_head {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.navigation_wrp .navigation {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	subnav	
-------------------------------------------------------------*/
.navigation ul li .subnav {
	width:auto;
	display:none;
	position:absolute;
	z-index:100;
	top:49px;
	left:0;
	right:0;
	margin:auto;
	padding:20px;
	background:#fff;
	border-top:solid 2px #003b77;
	box-shadow:3px 3px 3px rgba(0,0,0,0.1); 
	-webkit-box-shadow:3px 3px 3px rgba(0,0,0,0.1); 
	-moz-box-shadow:3px 3px 3px rgba(0,0,0,0.1);
}
.navigation ul li .subnav:after {
	content:"";
	position:absolute;
	top:-12px;
	left:0;
	right:0;
	margin:auto;
	width:15px;
	height:10px;
	border-top: 5px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 5px solid #003b77;
  border-left: 10px solid transparent;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.navigation ul li .subnav2 {
	width:300px;
	left:-74px;
}
.navigation ul li .subnav2 .left {
	float:left;
	width:50%;
}
.navigation ul li .subnav2 .right {
	float:right;
	width:50%;
}
.navigation ul li .subnav li {
	width:auto;
	float:none;
	line-height:20px;
}
.navigation ul li .subnav li + li {
	margin-top:5px;
}
.navigation ul li .subnav .sp_tablet + li {
	margin-top:0;
}
.navigation ul li .subnav li.mt {
	margin-top:25px;
}
.navigation ul li .subnav li.head2 {
	color:#003b77;
	font-size:14px;
	line-height:25px;
	font-weight:bold;
}
.navigation ul li .subnav li a {
	display:inline-block; 
	color:#333;
	font-size:14px;
	line-height:20px;
	font-weight:normal;
	text-align:left;
	border:none;
	width:auto;
}
.navigation ul li .subnav li a:hover {
	text-decoration:underline;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	フッター
	
===============================================================*/

/*-------------------------------------------------------------
	.footer_sitemap
-------------------------------------------------------------*/
.footer_sitemap_wrp {
	width:100%;
	background:#003b77;
	padding:40px 0;
	border-bottom:1px solid rgba(0,0,0,0.2);
}
.footer_sitemap {
	text-align:left;
}
.footer_sitemap a {
	text-decoration:none;
	color:#fff;
}
.footer_sitemap a:hover {
	text-decoration:underline;
}
.footer_sitemap .cf > ul {
	width:18.2291%;
	float:left;
	margin-right:2.2135%
}
.footer_sitemap .cf > ul:last-child {
	width:38.6718%;
	margin-right:0;
}
.footer_sitemap .cf > ul:last-child ul {
	width:50%;
	float:left;
	margin-right:0;
}
.footer_sitemap ul li {
	color:#fff;
	font-size:14px;
	line-height:20px;
  margin-top: 5px;
}
.footer_sitemap ul .mt {
	margin-top:25px;
}
.footer_sitemap ul li .head {
	display:block;
	font-size:18px;
	line-height:25px;
	font-weight:bold;
	text-decoration:none;
	padding-bottom:4px;
	margin-bottom:10px;
	border-bottom:1px solid rgba(240,243,248,0.2);
}
.footer_sitemap ul .head2 {
	font-weight:bold;
}
.footer_sitemap_wrp .menubtn {
	display:none;
}

/*englishバージョン*/
.footer_sitemap2 .cf > ul {
	width:18.2291%;
	float:left;
	margin-right:2.0833%
}
.footer_sitemap2 .cf > ul:nth-child(2) {
	width:38.5416%;
}
.footer_sitemap2 .cf > ul:nth-child(3) {
	width:39.0625%;
	margin-right:0;
}
.footer_sitemap2 .cf > ul:last-child ul {
	width:auto;
	float:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.footer_sitemap_wrp {
	background:#fff;
	padding:30px 0;
	border-bottom:none;
}	
.footer_sitemap {
	display:none;
}
.footer_sitemap_wrp .menubtn {
	display:block;
}
.footer_sitemap_wrp .menubtn a {
	display:block;
	color:#003b77;
	font-size:13px;
	text-align:center;
	line-height:40px;
	text-decoration:none;
	width:100px;
	margin:0 auto;
	border:solid 1px #003b77;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.footer_sitemap_wrp {
	padding:15px 0;
}		

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	footer_copy_wrp	
-------------------------------------------------------------*/
.footer_copy_wrp {
	width:100%;
	background:#003b77;
	padding:20px 0 30px;
	border-top:1px solid rgba(255,255,255,0.08);
}
.footer_copy_wrp .footer_logo {
	float:left;
	width:102px;
	height:auto;
}
.footer_copy_wrp .copyright {
	float:right;
	color:#fff;
	font-size:12px;
	line-height:20px;
	margin-top:18.5px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.footer_copy_wrp {
	padding:15px 0 30px;
	border-top:none;
}	
.footer_copy_wrp .footer_logo {
	float:none;
	width:51px;
	margin:0 auto;
}
.footer_copy_wrp .copyright {
	float:none;
	font-size:10px;
	text-align:center;
	margin-top:20px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*===============================================================
	
	MENU
	
===============================================================*/

/* タブレット以下 */
@media screen and (max-width: 960px) {
.menu_bg {
	background:#fff;
	position:absolute;
	z-index:300;
	top:0;
	left:0;
}
.menu_icon {
	position:fixed;
	top:16px;
	right:15px;
	z-index:300;
}
.menu .menu_nav {
	background:#fff;
	position:absolute;
	top:50px;
	width:100%;
	z-index:300;
}
.menu .menu_nav .langlist {
	width:165px;
	margin:0 auto;
}	
.menu .menu_nav .langlist li {
	display:inline-block;
	margin-right:20px;
	font-size:13px;
	line-height:20px;
}
.menu .menu_nav .langlist li:last-child {
	margin-right:0;
}	
.menu .menu_nav .langlist li a {
	text-decoration:none;
	color:#333;
	padding-bottom:3px;
}
.menu .menu_nav .langlist li a:hover {
	border-bottom:solid 1px #003b77;
}
.menu .menu_nav .langlist li.current a {
	border-bottom:solid 1px #003b77;
}	
.menu .search {
	width:254px;
	margin:0 auto;
	margin-top:20px;
	background:url(../images/sp_icon_search.png) no-repeat left center;
	background-size:20.5px 20px;
	padding-left:27.5px;
}
.menu .search input {
	width:200px;
	color:#000;
	font-size:14px;
	line-height:20px;
	padding:4px 5px;
	border:1px solid #bfbfbf;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:0;
	-webkit-appearance:none;
	vertical-align: top;
}
.menu .search .btn {
	display:inline-block;
	margin-left:5px;
}
.menu .search .btn a ,
.menu .search .btn input {
	display:block;
	color:#fff;
	font-size:16px;
	line-height:20px;
	text-align:center;
	text-decoration:none;
	padding:5px;
	background:#003b77;
	border: 0;
	width: auto;
	cursor: pointer;
}
.menu .search .btn a:hover {
	background:#004a96;
}	
.menu .navlist {
	width:100%;
	overflow:hidden;
	border-bottom:1px solid rgba(0,0,0,0.2);
	margin-top:30px;
}
.menu .navlist > li {
	border-top:1px solid rgba(0,0,0,0.2);
}
.menu .navlist li a {
	position:relative;
	width:100%;
	display:block;
	font-size:15px;
	line-height:50px;
	text-decoration:none;
	padding:0 0 0 15px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	color:#000;
}
.menu .navlist li .subnav {
	border-top:dotted 1px rgba(0,0,0,0.1);
}
.menu .navlist li .subnav ul + ul {
	border-top:solid 1px rgba(0,0,0,0.1);
}	
.menu .navlist li .subnav li {
	border-bottom:dotted 1px rgba(0,0,0,0.1);
}
.menu .navlist li .subnav li:last-child {
	border-bottom:none;
}
.menu .navlist li .subnav li.head2 {
	font-weight:bold;
	font-size:15px;
	line-height:25px;
	padding:0 0 0 15px;
	color:#fff;
	background:#919eae;
}
.menu .navlist li .subnav li a {
	font-weight:normal;
	font-size:15px;
	line-height:45px;
	padding:0 0 0 30px;
	color:#000;
}
.menu .navlist .index a:after,
.menu .navlist li .subnav li a:after,
.menu .navlist .sp_head a:after {
	position:absolute;
	content:" ";
	width:10px; height:10px;
	top:0; bottom:0; left:auto; right:22.5px;
	margin:auto;
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.menu .navlist .sp_head {
	display:block;
}	
.menu .closebtn {
	border-top:solid 1px rgba(255,255,255,0.1);
	padding:30px 0;
}
.menu .closebtn a {
	display:block;
	width:100px;
	margin:0 auto;
	color:#003b77;
	font-size:13px;
	line-height:40px;
	text-align:center;
	text-decoration:none;
	border:solid 1px #003b77;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
	
/*メニュー開閉ボタン*/	
.menu .head {
	position:relative;
}
.menu .head .menu_icon {
	position:absolute;
	width:20px;
	height:20px;
	right:15px;
	top:15px;
	background:#003b77;
	cursor:pointer;
}
.menu .head .menu_icon_inner {
	position: relative;
	width:20px;
	height:20px;
}
.menu .head .menu_icon span {
	display:inline-block;
	transition:all .3s;
	box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	width:10px;
	height:2px;
	background-color:#fff;
	border-radius:0px;
}
.menu .head .menu_icon span:nth-of-type(1) {
	top:9px;
	left:5px;
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	-moz-transform:rotate(90deg);	
}
.menu .head .menu_icon span:nth-of-type(2) {
	top:9px;
	left:5px;
}
.menu .head.active .menu_icon span:nth-of-type(1) {
	-webkit-transform:rotate(360deg);
	transform:rotate(360deg);
	-ms-transform:rotate(360deg);
	-moz-transform:rotate(360deg);}	
	
.menu .search_en {
	width:252px;
	margin:0 auto;
	margin-top:20px;
	background:url(../images/sp_icon_search.png) no-repeat left center;
	background-size:20.5px 20px;
	padding-left:27.5px;
}
.menu .search_en input {
	width:179px;
	color:#000;
	font-size:14px;
	line-height:20px;
	padding:4px 5px;
	border:1px solid #bfbfbf;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:0;
	-webkit-appearance:none;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～330px */
@media only screen and (max-width: 330px) {
	
.menu .menu_nav .langlist {
	width:155px;
}	
.menu .menu_nav .langlist li {
	margin-right:15px;
}
	
}	/* for SP max-width: 330px */

/*-------------------------------------------------------------
	menu-trigger
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 960px) {
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
}
.menu-trigger {
	position:relative;
	width:17.5px;
	height:16.5px;
}
.menu-trigger span {
	position: absolute;
	left:0;
	width:100%;
	height:2.5px;
	background-color:#003b77;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 7px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
/* animation */
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateX(-1.5px) translateY(7px) rotate(-45deg);
	transform: translateX(-1.5px) translateY(7px) rotate(-45deg);
	-moz-transform: translateX(-1.5px) translateY(7px) rotate(-45deg);
	-ms-transform: translateX(-1.5px) translateY(7px) rotate(-45deg);
	width:120%;
}
.menu-trigger.active span:nth-of-type(2) {
	opacity:0;
	-webkit-transform: translateX(-1.5px) translateY(0) rotate(45deg);
	transform: translateX(-1.5px) translateY(0) rotate(45deg);
	-moz-transform: translateX(-1.5px) translateY(0) rotate(45deg);
	-ms-transform: translateX(-1.5px) translateY(0) rotate(45deg);
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateX(-1.5px) translateY(-7px) rotate(45deg);
	transform: translateX(-1.5px) translateY(-7px) rotate(45deg);
	-moz-transform: translateX(-1.5px) translateY(-7px) rotate(45deg);
	-ms-transform: translateX(-1.5px) translateY(-7px) rotate(45deg);
	width:120%;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	grid
	
===============================================================*/

.gridcontainer {
}
.gridcontainer .grid {
	float:left;
}
.gridcontainer .grid_rev {
	float:right;
}
.grid {
	margin-top:30px;
}
.gridcontainer2 {
	margin-top:10px !important;
}
.gridcontainer_mt0 {
	margin-top:-30px !important;
}
.gridcontainer_mt15 {
	margin-top:-15px !important;
}

/* ------------------------------------------------ */
/*	gridSize :465 gutterSize :30 column :2 */
/* ------------------------------------------------ */
.gridwrp_2 { width:103.125%;}
.gridwrp_2 .grid_2 { width:96.970%; margin-right:3.030%; }
.gridwrp_2 .grid_1 { width:46.970%; margin-right:3.030%; }
.gridwrp_2 .grid:nth-child(2n+1) {
	clear:both;
}

/*sp時に幅100％*/
/* ------------------------------------------------ */
/*	gridSize :465 gutterSize :30 column :2 */
/* ------------------------------------------------ */
.gridwrp_2_sp_full { width:103.125%;}
.gridwrp_2_sp_full .grid_2 { width:96.970%; margin-right:3.030%; }
.gridwrp_2_sp_full .grid_1 { width:46.970%; margin-right:3.030%; }
.gridwrp_2_sp_full .grid:nth-child(2n+1) {
	clear:both;
}

/* ------------------------------------------------ */
/*	gridSize :300 gutterSize :30 column :3 */
/* ------------------------------------------------ */
.gridwrp_3 { width:103.125%;}
.gridwrp_3 .grid_3 { width:96.970%; margin-right:3.030%; }
.gridwrp_3 .grid_2 { width:63.636%; margin-right:3.030%; }
.gridwrp_3 .grid_1 { width:30.303%; margin-right:3.030%; }
.gridwrp_3 .grid:nth-child(3n+1) {
	clear:both;
}

/*sp時に幅100％*/
/* ------------------------------------------------ */
/*	gridSize :300 gutterSize :30 column :3 */
/* ------------------------------------------------ */
.gridwrp_3_sp_full { width:103.125%;}
.gridwrp_3_sp_full .grid_3 { width:96.970%; margin-right:3.030%; }
.gridwrp_3_sp_full .grid_2 { width:63.636%; margin-right:3.030%; }
.gridwrp_3_sp_full .grid_1 { width:30.303%; margin-right:3.030%; }
.gridwrp_3_sp_full .grid:nth-child(3n+1) {
	clear:both;
}

/*sp時に幅50％*/
/* ------------------------------------------------ */
/*	gridSize :300 gutterSize :30 column :3 */
/* ------------------------------------------------ */
.gridwrp_3_sp_half { width:103.125%;}
.gridwrp_3_sp_half .grid_3 { width:96.970%; margin-right:3.030%; }
.gridwrp_3_sp_half .grid_2 { width:63.636%; margin-right:3.030%; }
.gridwrp_3_sp_half .grid_1 { width:30.303%; margin-right:3.030%; }
.gridwrp_3_sp_half .grid:nth-child(3n+1) {
	clear:both;
}

/* ------------------------------------------------ */
/*	gridSize :216 gutterSize :32 column :4 */
/* ------------------------------------------------ */
.gridwrp_4 { width:103.333%;}
.gridwrp_4 .grid_4 { width:96.774%; margin-right:3.226%; }
.gridwrp_4 .grid_3 { width:71.774%; margin-right:3.226%; }
.gridwrp_4 .grid_2 { width:46.774%; margin-right:3.226%; }
.gridwrp_4 .grid_1 { width:21.774%; margin-right:3.226%; }
.gridwrp_4 .grid:nth-child(4n+1) {
	clear:both;
}

/*sp時に幅100％*/
/* ------------------------------------------------ */
/*	gridSize :216 gutterSize :32 column :4 */
/* ------------------------------------------------ */
.gridwrp_4_sp_full { width:103.333%;}
.gridwrp_4_sp_full .grid_4 { width:96.774%; margin-right:3.226%; }
.gridwrp_4_sp_full .grid_3 { width:71.774%; margin-right:3.226%; }
.gridwrp_4_sp_full .grid_2 { width:46.774%; margin-right:3.226%; }
.gridwrp_4_sp_full .grid_1 { width:21.774%; margin-right:3.226%; }
.gridwrp_4_sp_full .grid:nth-child(4n+1) {
	clear:both;
}

/*sp時に幅50％*/
/* ------------------------------------------------ */
/*	gridSize :216 gutterSize :32 column :4 */
/* ------------------------------------------------ */
.gridwrp_4_sp_half { width:103.333%;}
.gridwrp_4_sp_half .grid_4 { width:96.774%; margin-right:3.226%; }
.gridwrp_4_sp_half .grid_3 { width:71.774%; margin-right:3.226%; }
.gridwrp_4_sp_half .grid_2 { width:46.774%; margin-right:3.226%; }
.gridwrp_4_sp_half .grid_1 { width:21.774%; margin-right:3.226%; }
.gridwrp_4_sp_half .grid:nth-child(4n+1) {
	clear:both;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.gridwrp_4_sp_full,
.gridwrp_4_sp_full .grid_1,
.gridwrp_4_sp_full .grid_2,
.gridwrp_4_sp_full .grid_3,
.gridwrp_3_sp_full,
.gridwrp_3_sp_full .grid_1,
.gridwrp_3_sp_full .grid_2,
.gridwrp_2_sp_full,
.gridwrp_2_sp_full .grid_1 {
	width:100%; margin-right:0;
}
	
.gridwrp_3_sp_half { width:105.000%; }
.gridwrp_3_sp_half .grid_1 { width:45.238%; margin-right:4.762%; }	
	
.gridwrp_4_sp_half { width:105.000%; }
.gridwrp_4_sp_half .grid_1 { width:45.238%; margin-right:4.762%; }
	
.grid {
	margin-top:15px;
}
.gridcontainer2 {
	margin-top:5px !important;
}
.gridcontainer_mt0 {
	margin-top:-15px !important;
}
.gridcontainer_mt15 {
	margin-top:-5px !important;
}	

}	/* for SP max-width: 736px */

/*===============================================================
	
	fixed
	
===============================================================*/
.fixed {
	position: fixed;
	top: 0;
}
.bg_fixed {
	background-attachment: fixed;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.fixed {
	position: fixed;
	top: 0;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	PAGETOP
	
===============================================================*/
#btn_pagetop {
	width:100%;
	overflow:hidden;
}
#btn_pagetop a {
	display:block;
	position:fixed;
	right:-300px; top:0;
	width:50px; height:50px;
	color:#fff;
	background-color:#fff;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	z-index:101;
	border-radius:30px;
}
#btn_pagetop a:hover {
	background-color:#003b77;
}
#btn_pagetop a:after {
	position:absolute;
	content:" ";
	width:14px; height:14px;
	top:20px; left:0; right:0; bottom:auto;
	margin:auto;
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border-radius:2px;
}
#btn_pagetop a:hover:after {
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	
#btn_pagetop a {
	width:40px;
	height:40px;
	background-size:40px 40px;
}
#btn_pagetop a:hover {
	background-color:#fff;
}
#btn_pagetop a:after {
	width:12px; height:12px;
	top:17px; left:0; right:0; bottom:auto;
}
#btn_pagetop a:hover:after {
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
}
	
}	/* for tablet max-width: 960px */


/*===============================================================
	
	フォーム
	
===============================================================*/
.form {
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*===============================================================
	
	btn_detail
	
===============================================================*/
.btn_detail {
	width:auto;
	text-align:center;
	margin-top:40px;
}
.btn_detail a {
	display:inline-block;
	background-color:#fff;
	color:#003b77;
	font-size:18px;
	line-height:22px;
	font-weight:bold;
	text-align:center;
	text-decoration:none;
	padding:20px 40px;
	border:2px solid #003b77;
}
.btn_detail a:hover {
	text-decoration:none;
	color:#fff;
	background-color:#003b77;
}
.btn_download a {
	padding:12.5px 58px;
}
.btn_download a span {
	display:block;
	font-size:12px;
	line-height:15px;
	font-weight:normal;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.btn_detail {
	width:90%;
	margin:0 auto;
	margin-top:20px;
}
.btn_detail a {
	display:block;
	font-size:13px;
	line-height:18px;
	padding:10px 0;
	border:1px solid #003b77;
}
.btn_detail a:hover {
	color:#003b77;
	background-color:#fff;
}
.btn_download a {
	padding:5px 0;
}
.btn_download a span {
	font-size:10px;
	line-height:10px;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	背景
	
===============================================================*/
.bg_tile {
	background-image:url(../images/bg_tile.jpg);
	background-position:top center;
	background-repeat:repeat;
}
.bg_grid {
	background-image:url(../images/bg_grid.jpg);
	background-position:center center;
	background-repeat:repeat;
}
.bg_gradation {
	background-image:url(../images/bg_gradation.jpg);
	background-position:top center;
	background-repeat:no-repeat;
	background-size:cover;
}
.bg_texture {
	background-image:url(../images/bg_texture.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}

/*===============================================================
	
	section
	headlineとcontentなど、複数の要素、機能を取りまとめるコンテナ的な親要素。
	幅はsection_innerに記述する
	
===============================================================*/
.section_wrp {
	background:#fff;
}
.section {
	width:100%;
}
.section_inner {
	margin:0 auto;
	padding:50px 0 70px 0;
}
.section:last-child .section_inner {
	margin:0 auto;
	padding:50px 0 100px 0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	
.section_inner {
	margin:0 auto;
	padding:50px 20px 70px 20px;
}
.section:last-child .section_inner {
	margin:0 auto;
	padding:50px 20px 100px 20px;
}	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_inner {
	margin:0 auto;
	padding:20px 15px 30px 15px;
}
.section:last-child .section_inner {
	margin:0 auto;
	padding:20px 15px 40px 15px;
}	
}	/* for SP max-width: 736px */


/*===============================================================
	
	content 
	個別のコンテンツ
	
===============================================================*/

.content {
}
.content + .content {
	margin-top:80px;
}
.text_content + .content {
	margin-top:40px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.content + .content {
	margin-top:30px;
}
.text_content + .content {
	margin-top:20px;
}
.pagefooter {
	margin-top:30px !important;
	padding-top:30px;
}
}	/* for SP max-width: 736px */


/*===============================================================
	
	headline
	見だし
	
===============================================================*/

.headline_wrp {
	position:relative;
}
.headline_wrp .headline {
	color:#003b77;
	font-size:24px;
	line-height:1.25;
	padding-bottom:10px;
	border-bottom:1px solid #003b77;
}
.headline_wrp .headline2 {
	color:#4f647e;
	font-size:24px;
	line-height:1.25;
	text-align:center;
}
.headline_wrp .read {
	color: #000;
	font-size:15px;
	line-height:2;
	text-align:center;
	margin-top:30px;
}
.headline_wrp .txtlink {
	position:absolute;
	bottom:10px;
	right:0;
}
.headline_wrp .caption,
.headline_wrp .update {
	color:#000;
	font-size:14px;
	line-height:1.8;
	text-align:right;
	position:absolute;
	bottom:10px;
	right:0;
}
.headline_wrp .update2 {
	color:#000;
	font-size:14px;
	line-height:1.8;
}
.headline_wrp + .content {
	margin-top:50px;
}
* + .headline_wrp {
	margin-top:50px;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

.headline_wrp .headline,
.headline_wrp .headline2 {
	font-size:22px;
}
.headline_wrp .caption,
.headline_wrp .update {
	font-size:11px;
}
.headline_wrp .update2 {
	font-size:11px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

* + .headline_wrp {
	margin-top:20px;
}	
.headline_wrp .headline {
	font-size:17px;
	padding-bottom:5px;
}
.headline_wrp .headline2 {
	font-size:17px;
	text-align:left;
}
.headline_wrp .read {
	font-size:13px;
	line-height:1.6;
	text-align:left;
	margin-top:15px;
}	
.headline_wrp .caption,
.headline_wrp .update {
	font-size:10px;
	bottom:5px;
}
.headline_wrp .update2 {
	font-size:10px;
}		
.headline_wrp + .content {
	margin-top:20px;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	subhead
	小見出し
	
===============================================================*/
.subhead {
	color:#003b77;
	font-size:20px;
	line-height:1.25;
	font-weight:bold;
}
* + .subhead {
	margin-top:40px;
}
.gridcontainer + .subhead {
	margin-top:40px;
}
.subhead + * {
	margin-top:10px;
}
.subhead + ul {
	margin-top:10px;
}
.section_contents .subhead + .img {
	margin-top:15px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.subhead {
	font-size:18px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.subhead {
	color:#fff;
	font-size:15px;
	background: #003b77;
	padding:7px;
}	
* + .subhead {
	margin-top:15px;
}
.gridcontainer + .subhead {
	margin-top:15px;
}
.section_contents .subhead + .img {
	margin-top:10px;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	基本のレイアウト
	section_contents
	
===============================================================*/
.section_contents .center {
	text-align:center;
}
.section_contents .pc_center {
	text-align:center;
}
.section_contents .headline_wrp + * {
	margin-top:30px;
}
.section_contents h5 {
	color:#000;
	font-size:16px;
	line-height:2;
	font-weight:bold;
	margin-top:10px;
}
.section_contents p {
	color:#000;
	font-size:15px;
	line-height:2;
}
.section_contents p + p {
	margin-top:10px;
}
.section_contents .mt {
	margin-top:30px;
}
.section_contents .caution {
	font-size:12px;
	line-height:1.6;
	margin-top:20px;
}
.section_contents .caption {
	font-size:12px;
	line-height:1.6;
	margin-top:10px;
}
.section_contents .img {
	margin-top:30px;
}
.section_contents .img + p {
	margin-top:15px;
}
.section_contents ul {
	margin-top:10px;
}
.section_contents ul + p {
	margin-top:10px;
}
.section_contents ul li {
	color:#000;
	font-size:15px;
	line-height:1.8;
	text-indent:-1em;
	padding-left:1em;
}
.section_contents ul li + li {
	margin-top:10px;
}
.section_contents .txtlink {
	margin-top:20px;
}
.section_contents .txtlink a {
	color:#003b77;
	font-size:15px;
	line-height:2;
	font-weight:bold;
}
.section_contents .txtlink a:hover {
	color:#0056ae;
}
a.icon_pdf {
	display:inline-block;
	padding-left:25px;
	background:url(../images/icon_pdf.png) no-repeat left top;
	background-size:20px 20px;
}
.section_contents .content_border {
	border:1px solid #919eae;
	padding:40px;
}



/* タブレット以下 */
@media screen and (max-width: 960px) {

.section_contents .content_border {
	padding:30px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.section_contents .pc_center {
	text-align:left;
}	
.section_contents .headline_wrp + * {
	margin-top:15px;
}
.section_contents h5 {
	font-size:13px;
	line-height:1.6;
	margin-top:10px;
}	
.section_contents p {
	font-size:13px;
	line-height:1.6;
}
.section_contents p + p {
	margin-top:10px;
}
.section_contents .mt {
	margin-top:15px;
}
.section_contents .caution {
	font-size:11px;
	line-height:1.6;
	margin-top:10px;
}
.section_contents .caption {
	font-size:12px;
	line-height:1.6;
	margin-top:10px;
}	
.section_contents .img {
	margin-top:10px;
}
.section_contents .img + p {
	margin-top:10px;
}
.section_contents ul li {
	font-size:13px;
	line-height:1.6;
}
.section_contents ul li + li {
	margin-top:5px;
}	
.section_contents .txtlink {
	margin-top:10px;
}
.section_contents .txtlink a {
	font-size:13px;
	line-height:1.6;
}
.section_contents .txtlink a:hover {
	color:#003b77;
}
a.icon_pdf {
	padding-left:21px;
	background-size:16px 16px;
}
.section_contents .content_border {
	padding:15px;
}	

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	pdf	
-------------------------------------------------------------*/

.pdf {
	border:1px solid #ddd;
	padding:15px;
	margin-top:30px;
}
.pdf .img {
	width:160px;
	float:left;
	margin-right:20px;
	margin-top:0;
}
.pdf .txt {
}
.pdf .txt p {
	font-size:12px;
	line-height:20px;
	margin-top:0;
}
.pdf .txt .txtlink {
	margin-top:0;
}
.pdf .txt .txtlink a {
	font-size:12px;
	line-height:20px;
	font-weight:bold;
	text-decoration:none;
}
.pdf .txt .txtlink a:hover {
	text-decoration:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.pdf {
	border:1px solid #ddd;
	padding:10px;
	margin-top:15px;
}
.pdf .img {
	width:80px;
	float:left;
	margin-right:10px;
}
.pdf .txt {
}
.pdf .txt p {
	font-size:10px;
	line-height:15px;
	margin-top:0;
}
.pdf .txt .txtlink {
	margin-top:0;
}
.pdf .txt .txtlink a {
	font-size:10px;
	line-height:15px;
}
	
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	テーブル1
	
===============================================================*/

.table1 {
	margin-top:30px;
}
.table1 table {
	width:100%;
	text-align:left;
	border-collapse:separate;
	border-spacing:0;
	border-bottom:solid 1px #ddd;
}
.table1 table .bold {
	font-weight:bold;
}
.table1 table th {
	width:200px;
	padding:12px;
	font-weight:bold;
	border:solid 1px #ddd;
	border-right:0;
	border-bottom:0;
	background:#f4f9ff;
	color:#000;
	font-size:14px;
	line-height:1.8;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.table1 table td {
	padding:12px;
	border:solid 1px #ddd;
	border-bottom:0;
	color:#000;
	font-size:14px;
	line-height:1.8;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.table1 table td + td {
	border-left:0;
}
.table1 table tr:nth-child(odd) {
	background:#fff;
}
/*
.table1 table tr:nth-child(even) {
  background:#f4f9ff;
}
*/
.subhead + .table1 {
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.table1 {
	margin-top:15px;
}	
.table1 .table {
	margin-top:15px;
}	
.table1 table {
	padding:0;
	margin-top:0px;
}
.table1 table a:hover {
	color:#003b77;
}	
.table1 table th {
	padding:7px;
	display:list-item;
	list-style:none;
	border-right:solid 1px #ddd;
	width:100%;
	font-size:13px;
	line-height:1.6;
}
.table1 table td {
	padding:7px;
	display:list-item;
	list-style:none;
	width:100%;
	font-size:13px;
	line-height:1.6;
	border-top:0;
}
.table1 table tr:nth-child(odd) ,
.table1 table tr:nth-child(even) {
  background:#fff;
}
.subhead + .table1 {
	margin-top:0;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	テーブル2
	
===============================================================*/

.table2 {
	margin-top:30px;
}
.table2 table {
	border-collapse: collapse;
	width:100%;
}
.table2 table th,
.table2 table td {
	color:#000;
	font-size:14px;
	line-height:1.8;
	padding:12px;
	border:1px solid #ddd;
}
.table2 table th {
	text-align:right;
	font-weight:bold;
	background:#f4f9ff;
}
.table2 table tbody th {
	color:#003b77;
	text-align:left;
	background:#f4f9ff;
	width:100px;
}
.table2 table td {
	text-align:right;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width:736px){

.table2 {
	margin-top:0;
}		
.table2 table {
	display:block;
}
.table2 table thead {
	display:none;
}
.table2 table tbody {
	display:block;
}
.table2 table tbody tr {
	display:block;
	margin-top:15px;
	border-top:solid 1px #ddd;
	border-left:solid 1px #ddd;
	border-right:solid 1px #ddd;
}
.table2 table tbody th,
.table2 table tbody td {
	display: list-item;
	list-style:none;
	border: none;
	font-size:13px;
	line-height:1.6;
}
.table2 table tbody th {
	list-style-type: none;
	padding:7px;
	width:100%;
	box-sizing:border-box;
	background:#f4f9ff;
	border-bottom:1px solid #ddd;
}
.table2 table tbody td {
	margin-left:0px;
	padding:7px;
	border-bottom:solid 1px #ddd;
	text-align:left;
	width:100%;
	box-sizing:border-box;
}
/*.table2 table tbody td:nth-of-type(1):before { content: "2017年度"; padding-right:15px; }*/
.table2 table tbody td:nth-of-type(1):before { content: "2018年度"; padding-right:15px; }
.table2 table tbody td:nth-of-type(2):before { content: "2019年度"; padding-right:15px; }
.table2 table tbody td:nth-of-type(3):before { content: "2020年度"; padding-right:15px; }
.table2 table tbody td:nth-of-type(4):before { content: "2021年度"; padding-right:15px; }
.table2 table tbody td:nth-of-type(5):before { content: "2022年度(予想)"; padding-right:15px; }
.table2 table tbody td br { display:none; }
	
.table2 table tbody .sp_new_txt:nth-of-type(5):before { content: "2022年度"; padding-right:15px; }
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	txtlink 2016/11/16
	
===============================================================*/

.txtlink {
	line-height:25px;
}
.txtlink a {
	padding-left:15px;
	color:#000;
	font-size:15px;
	line-height:25px;
	text-align:right;
	text-decoration:none;
	position:relative;
	display:inline-block;
}
.txtlink a:hover {
	text-decoration:underline;
}
.txtlink a:after {
	position:absolute;
	content:" ";
	width:6px; height:6px;
	top:0; bottom:0; left:0; right:auto;
	margin:auto;
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.txtlink.arw_prev a {
}
.txtlink.arw_prev a:after {
	top:7px; bottom:auto; left:3px; right:auto;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.txtlink.arw_after a {
	padding-left:0;
	padding-right:10px;
}
.txtlink.arw_after a:after {
	left:auto; right:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.txtlink {
	line-height:10px;
}	
.txtlink a {
	padding-left:10px;
	font-size:12px;
	line-height:1;
}
.txtlink a:hover {
	text-decoration:none;
}
.txtlink a:after {
	width:5px; height:5px;
	top:0; bottom:0; left:0; right:auto;
	border-top:solid 1px #003b77;
	border-left:solid 1px #003b77;
}	
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	modal 2016/10/11
		
===============================================================*/
.modal_bg {
	position:absolute;
	top:0;
	left:0;
	background:#000;
	display:none;
	z-index:9998;
}
.modal {
	position:absolute;
	top:0;
	left:0;
	width:800px;
	display:none;
	z-index:9999;
	
	transition:top 0.2s linear,left 0.1s linear;
	-moz-transition:top 0.2s linear,left 0.1s linear;
	-ms-transition:top 0.2s linear,left 0.1s linear;
	-o-transition:top 0.2s linear,left 0.1s linear;
	-webkit-transition:top 0.2s linear,left 0.1s linear;
}
.modal .close {
	position:absolute;
	width:30px; height:30px;
	top:0; right:0;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	cursor:pointer;
	z-index:9999;
}
.modal .close:before {
	content:" ";
	position:absolute;
	width:30px; height:2px;
	background:#fff;
	top:10px; right:0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.modal .close:after {
	content:" ";
	position:absolute;
	width:30px; height:2px;
	background:#fff;
	top:10px; right:0;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.modal .close:hover {
	opacity:0.7;
}
.modal .modal_container {
	padding:0;
	position:relative;
}
.modal .modal_contents_wrp {
	position: relative;
	padding:40px;
	width: 100%;
	height: 100%;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.modal .modal_inner {
	padding:30px;
}
.modal .modal_contents_wrp::-webkit-scrollbar {
  display: none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.modal {
	width:100%;
}
.modal .modal_container {
}
.modal .close {
	top:5px; right:0px;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.modal .modal_pager
-------------------------------------------------------------*/
.modal .modal_pager li a {
	position:absolute;
	top:0; bottom:0;
	margin:auto;
	display:block;
	width:30px;
	height:30px;
	white-space:nowrap;
	text-indent:100%;
	overflow:hidden;
}
.modal .modal_pager li a:after {
	position:absolute;
	content:" ";
	width:15px; height:15px;
	top:6px; left:0;
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.modal .modal_pager li.prev a {
	left:0;
	-webkit-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg);
}
.modal .modal_pager li.next a {
	right:0;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.modal_container
-------------------------------------------------------------*/
.modal .modal_container .modal_header {
}
.modal .modal_container .modal_header h3 {
	font-size:25px;
	line-height:50px;
	text-align:center;
	font-weight:bold;
	text-shadow:none;
}
.modal .modal_container .modal_header p {
	font-size:14px;
	line-height:20px;
	text-align:center;
	font-weight:bold;
}
.modal .btn {
	width:560px;
	margin:0 auto;
	margin-top:40px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.modal .modal_container .modal_header h3 {
	font-size:20px;
	line-height:25px;
	padding-top:5px;
}
.modal .btn {
	width:100%;
	margin:0 auto;
	margin-top:40px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.modal_container .btn
-------------------------------------------------------------*/
.modal_container .btn {
	width:450px;
	margin:0 auto;
	margin-top:30px;
}
.modal_container .btn a {
	position:relative;
	display:block;
	background-color:#e63412;
	text-align:center;
	color:#fff;
	font-size:18px;
	line-height:20px;
	font-weight:bold;
	padding:20px 0;
	border-radius:5px;
	box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	text-decoration:none;
}
.modal_container .btn a:hover {
	text-decoration:none;
	background-color:#ff6600;
}
.modal_container .btn a:after {
	position:absolute;
	content:" ";
	width:13px; height:13px;
	top:0; left:auto; bottom:0; right:10px;
	margin:auto;
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.modal_container .btn {
	width:100%;
	margin:0 auto;
	margin-top:15px;
}
.modal_container .btn a {
	font-size:16px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	nodata	
-------------------------------------------------------------*/
.modal .nodata {
	padding:50px 15px;
	text-align:center;
}
.modal .nodata h3 {
	font-size:16px;
	color:#fff;
}
.modal .closebtn a {
	display:block;
	width:120px;
	margin:0 auto;
	line-height:30px;
	border:solid 1px #fff;
	text-align:center;
	margin-top:20px;
	color:#fff;
}
.modal_gamedetail .closebtn a:hover {
	color:#000;
	background:#fff;
	text-decoration:none;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.modal .close {
	top:30px;
	right:0px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	モーダル制作時の確認用
-------------------------------------------------------------*/
.modal {
	/*display:block;*/
}
.modal_demo1 .modal_inner,
.modal_demo2 .modal_inner {
	color:#fff;
	background:#333;
	padding:30px;
}

/*===============================================================
	
	slider
	
===============================================================*/
.slider {
	position:relative;
	background:#fff;
}
.slider .pager {
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	width:70px;
	height:70px;
	z-index:10;
}
.slider .prev a ,
.slider .next a {
	display:block;
	width:70px;
	height:70px;
	overflow:hidden;
	text-indent:-200%;
}
.slider .prev {
	left:0;
}
.slider .prev a {
	background:url("../images/slider/pc-icon_topics_arw_01.png") no-repeat center center;
	background-size:100% 100%;
}
.slider .prev a:hover {
	background:url(../images/slider/pc-icon_topics_arw_on_01.png) no-repeat center center;
	background-size:100% 100%;
}
.slider .next {
	right:0;
}
.slider .next a {
	background:url(../images/slider/pc-icon_topics_arw_02.png) no-repeat center center;
	background-size:100% 100%;
}
.slider .next a:hover {
	background:url(../images/slider/pc-icon_topics_arw_on_02.png) no-repeat center center;
	background-size:100% 100%;
}

.slider li {
	width:100%;
	position:relative;
}
.slider li:nth-child(even) {
	width:100%;
}
.slider li img {
	width: inherit;
	max-width: 100%;
	min-width: 100%;
	height: auto;
}
.slider li .cap {
	display:block;
	color:#000;
	font-size:16px;
	line-height:20px;
	padding:20px;
	text-align:left;
}
.slider li .new {
	position:absolute;
	z-index:100px;
	top:-27px;
	left:5px;
	color:#fff;
	font-size:12px;
	line-height:54px;
	font-weight:bold;
	background:#eb6877;
	text-align:center;
	width:54px;
	height:54px;
	border-radius:27px;
}
.slider .owl-controls {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.slider li ,
.slider li:nth-child(even) {
	float:none;
	width:100%;
}
.slider li img {
	width:100%;
}
.slider .pager {
	width:35px;
	height:35px;
	display:none;
}
.slider .prev {
	/*left:-10px;*/
}	
.slider .next {
	/*right:-10px;*/
}	
.slider .prev a ,
.slider .next a {
	width:35px;
	height:35px;
}
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	linkarea
	
===============================================================*/

.linkarea {
	-webkit-transition:all 0.1s linear;
	-ms-transition:all 0.1s linear;
	-moz-transition:all 0.1s linear;
	-o-transition:all 0.1s linear;
}
.linkarea.hover {
	opacity:0.7;
}
.haslink {
	cursor:pointer;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.linkarea.hover {
	opacity:1;
}

}	/* for SP max-width: 736px */

/*===============================================================
	
	youtube
	
===============================================================*/
.youtube {
  position: relative;
  width:100%;
  padding-top:56.25%;
}
.youtube iframe {
  position: absolute;
  top:0;
  right:0;
  width:100% !important;
  height:100% !important;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.youtube {
  position:relative;
  width:100%;
  padding-top:56.25%;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	トップページ
	
===============================================================*/

/*===============================================================
	
	top_item
	
===============================================================*/

.top_item {
	background:#fff;
	box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-moz-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-webkit-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
}
.top_item .txt {
	text-align:center;
	padding:10px;
}
.top_item .txt h4 {
	color:#000;
	font-size:20px;
	line-height:1.25;
	font-weight:bold;
}
.top_item .txt h5 {
	color:#000;
	font-size:14px;
	line-height:1.25;
	font-weight:bold;
}
.top_item .txt p {
	color:#000;
	font-size:14px;
	line-height:1.428;
	margin-top:5px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.top_item {
	box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-moz-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-webkit-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
}
.top_item .txt {
	padding:7.5px;
}	
.top_item .txt h4 {
	font-size:12px;
}
.top_item .txt h5 {
	font-size:12px;
}
.top_item .txt p {
	font-size:11px;
	line-height:1.333;
	text-align:left;
	margin-top:2px;
}
/*SP時にフロート*/
.top_item_sp_float .fitimg {
	width:50%;
	float:left;
}
.top_item_sp_float .txt {
	width:50%;
	float:right;
	display:table;
	padding:0;
}
.top_item_sp_float .txt .inner {
	vertical-align:middle;
	display:table-cell;
	padding:0 10px;
}

/*SP時にテーブルセル*/
.top_item_sp_cell {
}
.top_item_sp_cell .txt {
	padding:0;
	display:table;
	height:40px;
	width:100%;
}
.top_item_sp_cell .txt h5 {
	vertical-align:middle;
	display:table-cell;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	top_item_pc_float　PCタブレット時にフロート
	
===============================================================*/

.top_item_pc_float {
}
.top_item_pc_float .item {
	background:#fff;
	box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-moz-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-webkit-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
}
.top_item_pc_float .item + .item {
	margin-top:10px;
}	
.top_item_pc_float .item .fitimg {
	width:43%;
	float:left;
}
.top_item_pc_float .item .txt {
	width:57%;
	float:right;
	display:table;
}	
.top_item_pc_float .item .txt h4 {
	color:#000;
	font-size:20px;
	line-height:1.25;
	font-weight:bold;
	vertical-align: middle;
	display:table-cell;
	padding-left:20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.top_item_pc_float .item .txt h4 {
	font-size:18px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.top_item_pc_float .item {
	width:31.25%; 
	margin-right:3.125%;
	float:left;
	box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-moz-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-webkit-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
}

.top_item_pc_float .item:last-child { 
	margin-right:0;
}
.top_item_pc_float .item + .item {
	margin-top:0;
}		
.top_item_pc_float .item .fitimg {
	width:100%;
	float:none;
}
.top_item_pc_float .item .txt {
	width:100%;
	float:none;
	height:40px;
}	
.top_item_pc_float .item .txt h4 {
	font-size:12px;
	text-align:center;
	padding-left:0;
}
.top_item_pc_float .item2 {
	width:47.5%; 
	margin-right:5%;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.top_item_pc_float .item2:nth-child(even) {
	margin-right:0;
}
.top_item_pc_float .item2:nth-child(3),
.top_item_pc_float .item2:nth-child(4) {
	margin-top:10px;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	top_news
	
===============================================================*/

.top_news {
	margin-top:25px;
}
.top_news dt {
	color:#000;
	font-size:14px;
	line-height:1.5;
	width:120px;
	float:left;
}
.top_news dd {
	font-size:14px;
	line-height:1.5;
	margin-left:120px;
}
.top_news dd + dt,
.top_news dd + dt + dd {
	margin-top:15px;
}
.top_news dd a {
	color:#000;
	text-decoration:underline;
}
.top_news dd a:hover {
	color:#555;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.top_news {
	margin-top:15px;
}
.top_news dt {
	font-size:12px;
	font-weight:bold;
	width:100%;
	float:none;
}	
.top_news dd {
	font-size:12px;
	margin-left:0;
	margin-top:0 !important;
}
.top_news dd + dt {
	margin-top:10px;
}
.top_news dd a:hover {
	color:#000;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	bnr_wrp
	
===============================================================*/

.bnr_wrp .bnr {
	margin-top:10px;
}
.bnr_wrp .bnr:nth-child(1) {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.bnr_wrp {
}	
.bnr_wrp .bnr:nth-child(1),
.bnr_wrp .bnr:nth-child(2) {
	margin-top:0;
}	
.bnr_wrp .bnr:nth-child(odd) {
	width:47.5%;
	float:left;
}
.bnr_wrp .bnr:nth-child(even) {
	width:47.5%;
	float:right;
}	
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	top_ir
	
===============================================================*/

.top_ir dt {
	color:#000;
	font-size:14px;
	line-height:1.5;
}
.top_ir dt .icon {
	color:#fff;
	font-size:12px;
	line-height:20px;
	text-decoration:none;
	display:inline-block;
	margin-left:10px;
	padding:0 5px;
}
.top_ir dt .icon_statement {
	background:#ff6633;
}
.top_ir dt .icon_disclosure {
	background:#339900;
}
.top_ir dt .icon_pr {
	background:#5aacde;
}
.top_ir dt .icon_topics {
	background:#efa232;
}
.top_ir dt .icon_financialbriefing {
	background:#B886FF;
}
.top_ir dt .icon_investorbriefing {
	background:#56C1C7;
}
.top_ir dt .icon_statement:hover,
.top_ir dt .icon_disclosure:hover,
.top_ir dt .icon_pr:hover,
.top_ir dt .icon_info:hover,
.top_ir dt .icon_topics:hover,
.top_ir dt .icon_financialbriefing:hover,
.top_ir dt .icon_investorbriefing:hover{
	opacity:0.7;
}
.top_ir dd {
	font-size:14px;
	line-height:1.5;
	margin-top:5px;
}
.top_ir dd + dt {
	margin-top:20px;
}
.top_ir dd a {
	color:#000;
	text-decoration:underline;
}
.top_ir dd a:hover {
	color:#555;
}
.headline_wrp + .top_ir {
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.top_ir dt {
	font-size:12px;
	font-weight:bold;
}
.top_ir dt .icon {
	font-size:10px;
	line-height:15px;
	margin-left:5px;
	padding:0 3px;
}
.top_ir dt .icon_statement:hover,
.top_ir dt .icon_disclosure:hover,
.top_ir dt .icon_pr:hover,
.top_ir dt .icon_info:hover {
	opacity:1;
}	
.top_ir dd {
	font-size:12px;
	margin-top:2px;
}
.top_ir dd + dt {
	margin-top:10px;
}
.top_ir dd a:hover {
	color:#000;
}	
.headline_wrp + .top_ir {
	margin-top:15px;
}
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	txtlinks
	
===============================================================*/
.txtlinks {
	margin-top:30px;
}
.txtlinks .txtlink {
	float:left;
	margin-right:20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.txtlinks {
	margin-top:5px;
}
.txtlinks .txtlink {
	float:none;
	margin-right:0;
	margin-top:8px;
}	

}	/* for SP max-width: 736px */

/*===============================================================
	
	btns
	
===============================================================*/
.btns {
	width:540px;
	margin:0 auto;
	margin-top:40px;
}
.btns .btn:nth-child(1) {
	float:left;
	width:48%;
}
.btns .btn:nth-child(2) {
	float:right;
	width:48%;
}
.btns .btn a {
	position:relative;
	display:block;
	color:#003b77;
	font-size:15px;
	line-height:20px;
	font-weight:bold;
	text-align:center;
	text-decoration:none;
	padding:15px;
	border:1px solid #003b77;
	background:#fff;
}
.btns .btn a:hover {
	color:#fff;
	text-decoration:none;
	background:#003b77;
}
.btns .btn a:after {
	content:'';
	position:absolute;
	margin:auto;
	top:0; bottom:0;
	right:10px;
	border-right:solid 1px #003b77;
	border-bottom:solid 1px #003b77;
	width:8px;
	height:8px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transition:all .1s linear;
	transition:all .1s linear;
}
.btns .btn a:hover:after {
	border-right:solid 1px #fff;
	border-bottom:solid 1px #fff;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btns {
	width:90%;
	margin:0 auto;
	margin-top:20px;
}
.btns .btn:nth-child(1) {
	float:none;
	width:100%;
}
.btns .btn:nth-child(2) {
	float:none;
	width:100%;
	margin-top:10px;
}
.btns .btn a {
	display:block;
	font-size:12px;
	line-height:18px;
	padding:10px 0;
}
.btns .btn a:after {
	width:6px;
	height:6px;
}	
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	下層ページ共通
	
===============================================================*/

/*===============================================================
	
	maintitle　メインタイトル
	
===============================================================*/

.maintitle {
	padding:50px 0;
	/*border-top:1px solid #ebeaea;
	border-bottom:1px solid #ebeaea;*/
}
.maintitle h2 {
	color:#003b77;
	font-size:40px;
	line-height:1.2;
	font-weight:bold;
	text-align:center;
}
.maintitle .read {
	color:#003b77;
	font-size:18px;
	line-height:1.2;
	font-weight:bold;
	text-align:center;
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.maintitle {
	/*border-top:1px solid #ebeaea;*/
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.maintitle {
	padding:15px 0;
}	
.maintitle h2 {
	font-size:20px;
}
.maintitle .read {
	font-size:13px;
	margin-top:5px;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	pankuzu　パンくず
	
===============================================================*/
.pankuzu_wrp {
	background:#fff;
}
.pankuzu {
	width:auto;
	max-width:960px;
	margin:0 auto;
	padding-top:15px;
	text-align:left;
	position:relative;
	background:#fff;
}
.pankuzu li {
	display:inline-block;
	padding-left:10px;
	color:#333;
	font-size:14px;
	line-height:1.2;
}
.pankuzu li:first-child {
	padding-left:0;
}
.pankuzu li a {
	text-decoration:none;
	position:relative;
	padding-right:20px;
	color:#333;
}
.pankuzu li a:hover {
	text-decoration:underline;
}
.pankuzu li a:after {
	content:'';
	position:absolute;
	margin:auto;
	top:0; bottom:0;
	right:0;
	border-right:solid 1.5px #333;
	border-bottom:solid 1.5px #333;
	width:6px;
	height:6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.pankuzu .tag {
	color:#bbb;
	font-size:16px;
	line-height:30px;
	font-weight:bold;
	text-align:center;
	padding:0 10px;
	background:#eee;
	display:inline-block;
	position:absolute;
	top:15px;
	right:0;
} 

/* タブレット以下 */
@media screen and (max-width: 960px) {

.pankuzu {
	padding:15px 20px 0;
}
.pankuzu .tag {
	right:20px;
} 	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.pankuzu {
	padding:0;
}
.pankuzu ul {
	padding:5px 15px;
	}
.pankuzu li {
	display:inline-block;
	padding-left:3px;
	font-size:12px;
}
.pankuzu li a {
	padding-right:10px;
}
.pankuzu li a:hover {
	text-decoration:none;
}	
.pankuzu li a:after {
	width:4px;
	height:4px;
}
.pankuzu .tag {
	position:static;
	color:#fff;
	font-size:12px;
	line-height:20px;
	padding:4px 0;
	border:none;
	background:#919eae;
	display:block; 
} 		
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	.localnav
	
===============================================================*/
.localnav {
	text-align:center;
	padding:40px 0 0;
	background:#fff;
}
.localnav .list {
	width:960px;
	margin:0 auto;
}
.localnav .list .cf {
	display: contents;
}
.localnav .list .cf:before,
.localnav .list .cf:after {
	display: none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.localnav .list {
	width:100%;
	margin:0 auto;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.localnav {
	text-align:left;
	padding:0;
	background:#eeeeee;
}
.localnav .list {
	overflow-scrolling:touch;
	-webkit-overflow-scrolling:touch;
	/*padding:0 15px;*/
} 

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.localnav .navlist ul
-------------------------------------------------------------*/
.localnav .list ul {
}
.localnav .list li {
	display:inline-block;
	margin:0;
	padding:0 20px;
	font-size:16px;
	line-height:1;
}
.english .localnav .list li {
	padding:0 10px;
}
.english .localnav .list li:first-child {
	padding-left:0;
}
.english .localnav .list li:last-child {
	padding-right:0;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.localnav .list ul {
	margin-top:0;
	/*width:1000px;
	position:static;
	left:0;
	float:none;*/
  overflow-x:auto;
  white-space: nowrap;
}
.localnav .list li {
  /*
	position:relative;
	left:0;
	float:left;*/
	font-size:12px;
	padding:0 15px;
	/*margin-right:15px;
	padding-right:15px;*/
}
.english .localnav .list li,
.english .localnav .list li:first-child,
.english .localnav .list li:last-child {
	padding:0 15px;
	margin:0;
	/*margin-right:15px;
	padding-right:15px;*/
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	a
-------------------------------------------------------------*/
.localnav .list li a {
	display:block;
	color:#000;
	font-weight:bold;
	border-bottom:solid 1px transparent;
	padding:10px 0;
	text-decoration:none;
}
.localnav .list li a:hover {
	border-bottom:solid 1px #003b77;
	text-decoration:none;
}
.localnav .list li.current a {
	border-bottom:solid 1px #003b77;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.localnav .list li a {
	padding:11px 0;
}	

}	/* for SP max-width: 736px */

/*===============================================================
	
	事業紹介ページ
	
===============================================================*/

/*===============================================================
	
	category_item　カテゴリー
	
===============================================================*/
.category_item {
	background:#fff;
	border:1px solid #eee;
	box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-moz-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
	-webkit-box-shadow:2px 2px 2px rgba(22,22,22,0.10);
}
.category_item + .category_item {
	margin-top:30px;
}
.category_item .left {
	width:48.5%;
	float:left;
}
.category_item .right {
	width:51.5%;
	float:right;
	padding:25px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.category_item .right h3 {
	font-size:18px;
	line-height:1.3;
	font-weight:bold;
}
.category_item .right .read {
	font-size:28px;
	line-height:1.2;
	margin-top:10px;
}
.category_item .right .detail {
	font-size:14px;
	line-height:1.8;
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.category_item  {
}		
.category_item .left {
	width:100%;
	float:none;
}
.category_item .right {
	width:100%;
	float:none;
	padding:15px;
}
.category_item .right .read {
	font-size:24px;
}	

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.category_item {
	box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-moz-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
	-webkit-box-shadow:1px 1px 1px rgba(22,22,22,0.10); 
}	
.category_item + .category_item {
	margin-top:20px;
}	
.category_item .right h3 {
	font-size:17px;
}
.category_item .right .read {
	font-size:16px;
	margin-top:5px;
}
.category_item .right .detail {
	font-size:13px;
	line-height:1.6;
	margin-top:5px;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
　pagehead_wrp
	
===============================================================*/
.pagehead_wrp + .content {
	margin-top:50px;
}
.pagehead_wrp h3 {
	color:#000;
	font-size:30px;
	line-height:1.2;
	font-weight:normal;
	margin-top:30px;
}
.pagehead_wrp p {
	color:#000;
	font-size:15px;
	line-height:2;
	margin-top:10px;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.pagehead_wrp + .content {
	margin-top:20px;
}
.pagehead_wrp h3 {
	font-size:18px;
	margin-top:15px;
}
.pagehead_wrp p {
	font-size:13px;
	line-height:1.6;
	margin-top:5px;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	tab
	
===============================================================*/
/*-------------------------------------------------------------
	.tabhead	
-------------------------------------------------------------*/
.tabhead {
	margin-top:60px;
	text-align:center;
}
.tabhead li {
	width:50%;
	float:left;
}
.tabhead li a {
	color:#666;
	font-size:22px;
	line-height:30px;
	font-weight:bold;
	text-decoration:none;
	display:block;
	padding:15px 0;
	border-bottom:solid 1px #cccccc;
}
.tabhead li a:hover {
	color:#999;
}
.tabhead li.active a {
	color:#003b77;
	border:solid 1px #cccccc;
	border-bottom:0;
	color:#003b77;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.tabhead {
	margin-top:25px;
}
.tabhead li a {
	font-size:13px;
	line-height:1;
	padding:10px 0;
}

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.product
-------------------------------------------------------------*/
.product {
	margin-top:0;
}
.product h3 {
	color:#fff;
	font-size:22px;
	line-height:30px;
	padding:10px;
	background:#003b77;
}
.product h3 + h4 {
	margin-top:30px;
}
.product h4 {
	color:#003b77;
	font-size:22px;
	line-height:1.2;
	font-weight:bold;
	margin-top:50px;
}
.product h4 + .gridcontainer {
	margin-top:-20px;
}
.product p {
	color:#000;
	font-size:15px;
	line-height:2;
}
.product p.big {
	padding:20px;
	border:1px solid #ddd;
}
.product .gridcontainer + p {
	margin-top:30px;
}
.product .example {
	background:#f5f5f5;
	padding:25px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	margin-top:30px;
}
.product .example h5 {
	color:#000;
	font-size:16px;
	line-height:1.25;
	font-weight:bold;
}
.product .example h5 + p {
	margin-top:10px;
}
.product .example p {
	color:#000;
	font-size:14px;
	line-height:1.8;
}
.product .example p a {
	color:#000;
	margin-left:10px;
}
.product .example p a:hover {
	color:#555;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.product h3 {
	font-size:22px;
}	
	
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.product h3 {
	font-size:15px;
	line-height:20px;
	padding:5px;
}
.product h4 {
	font-size:15px;
	margin-top:20px;
}
.product h3 + h4 {
	margin-top:10px;
}
.product h4 + .gridcontainer {
	margin-top:-10px;
}
.product p {
	color:#000;
	font-size:13px;
	line-height:1.6;
}
.product .gridcontainer + p {
	margin-top:15px;
}	
.product .example {
	padding:15px;
	margin-top:15px;
}
.product .example h5 {
	font-size:13px;
}
.product .example h5 + p {
	margin-top:5px;
}
.product .example p {
	font-size:13px;
	line-height:1.6;
}
.product .example p a {
	display:block;
	margin-left:0;
}	
.product .example p a:hover {
	color:#000;
}
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	企業情報ページ
	
===============================================================*/

/*===============================================================
	
	message　メッセージ
	
===============================================================*/

.message {
	margin-top:25px;
}
.message .title {
	color:#003b77;
	font-size:36px;
	line-height:1.3;
}
.message .txt {
	margin-top:40px;
}
.message .txt p {
	color:#000;
	font-size:15px;
	line-height:2;
}
.message .txt .boss {
	width:370px;
	margin-left:auto;
	margin-right:0;
	margin-top:30px;
}
.message .txt .boss p {
	margin-top:23.5px;
	float:left;
}
.message .txt .boss .img {
	width:250px;
	float:right;
}
.message .title_en {
	font-size:25px;
	line-height:1.4;
}
/*english*/
.message .txt_en {
	margin-top:0;
}
.message .txt_en p {
	font-size:14px;
	margin-top:30px;
}
.message .txt .boss_en {
	text-align:right; 
	margin-top:30px;
}
.message .txt .boss_en p {
	font-size:12px;
	line-height:1.6;
}
.message .txt .boss_en .img {
	width:250px;
	margin:10px 0 0 auto;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.message .title {
	font-size:30px;
}
.message .title_en {
	font-size:25px;
}
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.message {
	margin-top:0;
}	
.message .sp_img {
	width:86px;
}
.message .title_wrp {
	display:table;
}	
.message .title {
	display:table-cell;
	vertical-align:middle;
	font-size:16px;
	padding-left:10px;
}
.message .txt {
	margin-top:15px;
}
.message .txt p {
	font-size:13px;
	line-height:1.6;
}
.message .txt .boss {
	width:204px;
	margin-top:10px;
}
.message .txt .boss p {
	font-size:13px;
	line-height:1;
	margin-top:12px;
}
.message .txt .boss .img {
	width:120px;
}
/*english*/
.message .title_en {
	font-size:15px;
	margin-top:0;
}
.message .txt_en {
	margin-top:0;
}
.message .txt_en p {
	font-size:13px;
	margin-top:15px;
}
.message .txt .boss_en {
	margin-top:10px;
}
.message .txt .boss_en p {
	font-size:12px;
	line-height:1.6;
}
.message .txt .boss_en .img {
	width:120px;
}

}	/* for SP max-width: 736px */

/*===============================================================
	
　movie　動画会社案内ページ
	
===============================================================*/

/*===============================================================
	
	video.js
	
===============================================================*/

.section .video-js .vjs-big-play-button {
  font-size: 80px;
  line-height: 80px;
  height: 80px;
  width: 80px;
  display: block;
  position: absolute;
  top:0; bottom:0; left:0; right:0; margin:auto;
  padding: 0;
  cursor: pointer;
  opacity: 1;
  border: 1px solid #fff;
  background-color: #2B333F;
  background-color: rgba(43, 51, 63, 0.7);
  -webkit-border-radius:50% 50%;
  -moz-border-radius:50% 50%;
  border-radius:50% 50%;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s; }

.section .vjs-playing .vjs-big-play-button {
	opacity:0;
	visibility:hidden;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
　brochure　会社案内ページ
	
===============================================================*/

.subhead + .brochure_img {
	width:300px;
	margin:0 auto;
	margin-top:20px;
}	

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.subhead + .brochure_img {
	width:100%;
	margin-top:10px;
}
	
}	/* for SP max-width: 736px */

/*===============================================================
	
　access　アクセスページ
	
===============================================================*/

.access_map {
	margin-top:40px;
}
.access_map iframe {
	width:100%;
}
.access_map .table1 {
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.access_map {
	margin-top:20px;
}	
.access_map .table1 {
	margin-top:5px;
}
	
}	/* for SP max-width: 736px */

/*===============================================================
	
　global　海外ネットワークページ
	
===============================================================*/

.global_map {
	margin-top:40px;
}
.global_map .table1 {
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.global_map {
	margin-top:20px;
}
.world_img {
	margin-top:20px;
}
.world_img .sp:last-child {
	margin-top:10px;
}			
.global_map .table1 {
	margin-top:0;
}
.global_map .subhead {
	margin-top:0;
}

	
}	/* for SP max-width: 736px */


/*===============================================================
	
　affiliated　主要関連会社ページ
	
===============================================================*/

.rel_company + .rel_company {
	margin-top:60px;
}
.rel_company .subhead + * {
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.rel_company + .rel_company {
	margin-top:30px;
}
.rel_company .subhead + * {
	margin-top:10px;
}	
.rel_company .table1 img {
	width:25%;
	height:auto;
}
	
}	/* for SP max-width: 736px */




/*===============================================================
	
　IR情報ページ
	
===============================================================*/

/*===============================================================
	
　linklist
	
===============================================================*/

.linklist {
}
.linklist_mt0 {
	margin-top:-30px;
}
.linklist li {
	float:left;
	width:31.25%;
	margin-right:3.125%;
	border:1px solid #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	margin-top:30px;
}
.linklist li:nth-child(3n) {
	margin-right:0;
}
.linklist li a {
	color:#000;
	font-size:16px;
	line-height:20px;
	text-decoration:none;
	background:#fff;
  padding: 20px 0;
	padding-left:40px;
	position:relative;
	display:block;
}
/*PC時のみ2行*/  
.linklist li.pc_row2 a {
	padding: 10px 0;
  padding-left:40px;
}
.linklist li a:hover {
	background:#eaf4ff;
}
.linklist li a:after {
	position:absolute;
	content:" ";
	width:6px; height:6px;
	top:0; bottom:0; left:20px; right:auto;
	margin:auto;
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
/*englishのトップ用*/
.grid_1 .linklist li {
	float:none;
	width:100%;
	margin-right:0;
}
.grid_2 .linklist li {
	float:left;
	width:47.62%;
	margin-right:4.76%;
}
.grid_2 .linklist li:nth-child(2) {
	margin-right:0;
}
/*englishの企業情報トップ用*/
.linklist_en li a {
	font-size:15px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
/*PC時のみ2行*/
.linklist li.pc_row2 a {
	padding: 20px 0;
  padding-left:40px;
}
/*spタブレット時のみ2行*/  
.linklist li.sp_tablet_row2 a {
	padding: 10px 0;
  padding-left:40px;
}
/*englishのトップ用*/
.grid_1 .linklist li a,
.grid_2 .linklist li a {
	font-size:14px;
}
/*englishの企業情報トップ用*/
.linklist_en li {
	float:left;
	width:47.5%;
	margin-right:5%;
}
.linklist_en li:nth-child(2n) {
	margin-right:0 !important;
}
.linklist_en li:nth-child(3n) {
	margin-right:5%;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.linklist {
	margin-top:5px;
}
.linklist_mt0 {
	margin-top:-10px;
}
.linklist li {
	float:left;
	width:47.5%;
	margin-right:5%;
	margin-top:10px;
}
.linklist li:nth-child(2n) {
	margin-right:0 !important;
}
.linklist li:nth-child(3n) {
	margin-right:5%;
}
.linklist li a {
	font-size:12px;
  line-height:15px;
  padding: 17.5px 0;
	padding-left:20px;
}
/*PC時のみ2行*/
.linklist li.pc_row2 a {
	padding: 17.5px 0;
  padding-left:20px;
}  
/*spタブレット時のみ2行**/  
.linklist li.sp_tablet_row2 a {
  padding-left:20px;
}  
.linklist li a:hover {
	background:#fff;
}	
.linklist li a:after {
	position:absolute;
	content:" ";
	width:5px; height:5px;
	top:0; bottom:0; left:7px; right:auto;
	margin:auto;
	border-top:solid 1.5px #003b77;
	border-left:solid 1.5px #003b77;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
/*englishのトップ用*/
.grid_1 .linklist li {
	float:none;
	width:100%;
	margin-right:0;
}
.grid_2 .linklist li {
	float:none;
	width:100%;
	margin-right:0%;
}
.grid_1 .linklist li a,
.grid_2 .linklist li a {
	font-size:13px;
}
/*englishの企業情報トップ用*/	
.linklist_en li {
	float:none;
	width:100%;
	margin-right:0;
}	
.linklist_en li a {
	font-size:13px !important;
}
	
	
}	/* for SP max-width: 736px */

/* SP向けレイアウトの指定：～350px */
@media only screen and (max-width: 350px) {

.linklist li a {
	font-size:11px;
}
	
}	/* for SP max-width: 350px */



/*===============================================================
	
　linklist2
	
===============================================================*/

.linklist2 {
}
.linklist2 li {
	float:left;
	width:48.5%;
	margin-right:3%;
	border:1px solid #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	/*margin-top:30px;*/
}
.linklist2 li:nth-child(2n) {
	margin-right:0;
}
.linklist2 li a {
	color:#000;
	font-size:16px;
	line-height:20px;
	text-align:center; 
	text-decoration:none;
	background:#fff;
  padding: 20px 0;
	display:block;
}
.linklist2 li a:hover {
	background:#eaf4ff;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.linklist2 {
	/*margin-top:5px;*/
}
.linklist2 li {
	float:none;
	width:100%;
	margin-right:0;
	/*margin-top:10px;*/
}
.linklist2 li:nth-child(2n) {
	margin-top:10px;
}
.linklist2 li a {
	font-size:12px;
	line-height:15px;
  padding: 17.5px 0;
}
.linklist2 li a:hover {
	background:#fff;
}	
	
}	/* for SP max-width: 736px */


/* SP向けレイアウトの指定：～350px */
@media only screen and (max-width: 350px) {

.linklist2 li a {
	font-size:11px;
}	
	
}	/* for SP max-width: 350px */


/*===============================================================
	
	accordion
	
===============================================================*/
.accordion {
	position:relative;
	margin-top:30px;
}
.accordion_icon {
	position:absolute;
	width:40px;
	height:40px;
	top:0;bottom:0;right:30px;
  margin:auto;
}
.accordion_icon_inner {
	position:relative;
	width:40px;
	height:40px;
}
.accordion_icon span {
	display:inline-block;
	transition:all .3s;
	box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	width:40px;
	height:1px;
	background-color:#fff;
	border-radius:0px;
}
.accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(90deg);
	transform: translateY(20px) rotate(90deg);
	-ms-transform: translateY(20px) rotate(90deg);
	-moz-transform: translateY(20px) rotate(90deg);	
}
.accordion_icon span:nth-of-type(2) {
	top:20px;
}
.active .accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(360deg);
	transform: translateY(20px) rotate(360deg);
	-ms-transform: translateY(20px) rotate(360deg);
	-moz-transform: translateY(20px) rotate(360deg);}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.accordion_icon {
	right:15px;
}	
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.accordion {
	margin-top:15px;
}		
.accordion_icon {
	width:20px;
	height:20px;
	right:10px;
}
.accordion_icon_inner {
	width:20px;
	height:20px;
}
.accordion_icon span {
	width:20px;
	height:1px;
}
.accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(90deg);
	transform: translateY(10px) rotate(90deg);
	-ms-transform: translateY(10px) rotate(90deg);
	-moz-transform: translateY(10px) rotate(90deg);	
}
.accordion_icon span:nth-of-type(2) {
	top:10px;
}
.active .accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(360deg);
	transform: translateY(10px) rotate(360deg);
	-ms-transform: translateY(10px) rotate(360deg);
	-moz-transform: translateY(10px) rotate(360deg);}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.accordion_title
-------------------------------------------------------------*/
.accordion_title {
	background-color:#919eae;
	position:relative;
	width:100%;
	cursor:pointer;
	transition:0.1s all;
}
.accordion_title:hover {
	background-color:#9eabbb;
}
.accordion_title h3 {
	font-size:22px;
	line-height:30px;
	padding:20px 0;
	color:#fff;
	text-align:center;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordion_title {
}
.accordion_title:hover {
	background-color:#919eae;
}	
.accordion_title h3 {
	font-size:15px;
	line-height:20px;
  /*text-align: left;*/
	padding:10px 0;
  /*padding-right:40px;*/
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.accordion_body
-------------------------------------------------------------*/
.accordion_body	{
	background:#fff;
	border:1px solid #919eae;
	border-top:none;
	padding:40px;
}
.accordion_body dt {
	color:#000;
	font-size:14px;
	line-height:1.8;
	float:left;
	width:130px;
}
.accordion_body dd {
	color:#000;
	font-size:14px;
	line-height:1.8;
	margin-left:130px;
}
.accordion_body dd +dt + dd,
.accordion_body dd + dt {
	margin-top:25px;
}
.accordion_body dd a {
	text-decoration:underline; 
}
.accordion_body	p {
	font-size:14px;
	line-height:1.8;
}
.accordion_body .fitimg + p {
	margin-top: 10px;
}
.accordion_body .table1 {
	margin-top:10px;
}
.accordion_body .table1 + .table1 {
	margin-top:15px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.accordion_body	{
	padding:30px;
}
.accordion_body dt {
	width:130px;
}
.accordion_body dd {
	margin-left:150px;
}
.accordion_body dd +dt + dd,
.accordion_body dd + dt {
	margin-top:20px;
}
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.accordion_body	{
	padding:15px;
}
.accordion_body dt {
	font-size:13px;
	line-height:1.6;
	font-weight:bold;
	width:100%;
	float:none;
}
.accordion_body dd {
	font-size:13px;
	line-height:1.6;
	margin-left:0;
}
.accordion_body dd + dt {
	margin-top:10px;
}	
.accordion_body dd + dt + dd {
	margin-top:0;
}
.accordion_body	p {
	font-size:13px;
	line-height:1.6;
}	
.accordion_body .table1 {
	margin-top:0;
}	
.accordion_body .table1 + .table1 {
/*	margin-top:10px;*/
}
}	/* for SP max-width: 736px */


/*===============================================================
	
　説明会資料ページ Add 2019/3/15
	
===============================================================*/

.irbriefing {
}
/*
.irbriefing .accordion_body {
	padding: 0;
	border: 0;
}
*/
.accordion_body .table1 {
	margin: 0;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*===============================================================
	
	説明会動画ボタン　2019/4/5　
	
===============================================================*/
.btn_link{
	position:relative;
	float:right;
}
.btn_link a{
	display:block;
	color:#003b77;
	border:1px solid #003b77;
	text-decoration:none;
	font-weight:bold;
	font-size:12px;
	padding:2px 10px;
	line-height:19px;
	text-align:center;
}
.btn_link a:hover {
	color:#fff;
	background:#003b77;
}
.btn_link a span{
	display:block;
	font-size:12px;
	line-height:15px;
	font-weight:normal;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_link{
	display: block;
	color:#003b77;
	float:none;
	width: 100%;
	margin:0 auto;
	margin-top: 5px;
	text-align: center;
}
.btn_link a{
	display: inline-block;
	font-size: 12px;
	font-weight:normal;
	line-height:18px;
	padding: 5px 8px;
	text-align:center;
	box-sizing: border-box;
}
.btn_link a:hover {
	color:#fff !important;
	background:#003b77;
}
.btn_link a span{
	font-size:10px;
	line-height:10px;
}
}
/*===============================================================
	
　個人投資家の皆様へページ
	
===============================================================*/

.element {
	margin-top:40px;
}
.headline_wrp + .element {
	margin-top:25px;
}
.grid .element {
	margin-top:0;
}
.element .sub {
	color:#003b77;
	font-size:28px;
	line-height:1.25;
	font-weight:normal;
}
.element .sub + * {
	margin-top:10px;
}
.element h4 {
	color:#000;
	font-size:20px;
	line-height:1.25;
	font-weight:bold;
}
.element * + h4 {
	margin-top:40px;
}
.element .btn_detail + h4 {
	margin-top:80px;
	font-size:25px;
}
.element h4 + * {
	margin-top:10px;
}
.element p {
	color:#000;
	font-size:15px;
	line-height:2;
}
.element p .orange {
	color:#ff6633;
}
.element p.big {
	font-size:16px;
}
.element .fitimg {
	margin-top:20px;
}
.element .list_wrp {
	margin-top:25px;
}
.element .list_wrp h5 {
	color:#000;
	font-size:16px;
	line-height:1.25;
	font-weight:bold;
}
.element .list_wrp dl {
	border-bottom:1px solid #ddd;
	margin-top:20px;
}
.element .list_wrp dt {
	color:#ff6633;
	font-size:16px;
	line-height:25px;
	font-weight:bold;
	padding:15px 0;
	width:370px;
	float:left;
	border-top:1px solid #ddd;
}
.element .list_wrp dd {
	color:#000;
	font-size:16px;
	line-height:25px;
	padding:15px 0 15px 30px;
	margin-left:370px;
	border-top:1px solid #ddd;
	position:relative; 
}
.element .list_wrp dd:after {
	position:absolute;
	content:" ";
	width:8px; height:8px;
	top:22.5px; left:0;
	margin:auto;
	border-top:solid 2px #000;
	border-left:solid 2px #000;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.element ul {
	margin-top:20px;
}
.element ul li {
	color:#000;
	font-size:14px;
	line-height:1.8;
}
.element ul li.blue {
	color:#003b77;
	font-size:15px;
	font-weight:bold;
}
.element .ul_half ul:nth-child(odd) {
	float:left;
	width:49%;
}
.element .ul_half ul:nth-child(even) {
	float:right;
	width:49%;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.element .ul_half ul:nth-child(odd) {
	float:none;
	width:100%;
}
.element .ul_half ul:nth-child(even) {
	float:none;
	width:100%;
}
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.element {
	margin-top:20px;
}
.headline_wrp + .element {
	margin-top:15px;
}
.element .sub {
	font-size:18px;
}
.element .sub + * {
	margin-top:5px;
}	
.element h4 {
	font-size:15px;
}
.element * + h4 {
	margin-top:20px;
}
.element .btn_detail + h4 {
	margin-top:40px;
	font-size:18px;
}
.element h4 + * {
	margin-top:5px;
}
.element p {
	font-size:13px;
	line-height:1.6;
}
.element p.big {
	font-size:13px;
	line-height:1.6;
}
.element .fitimg {
	margin-top:10px;
}
.element .list_wrp {
	margin-top:20px;
}
.element .list_wrp h5 {
	font-size:13px;
}
.element .list_wrp dl {
	margin-top:10px;
}
.element .list_wrp dt {
	font-size:13px;
	line-height:1.6;
	padding:10px 0 0 0;
	width:100%;
	float:none;
}
.element .list_wrp dd {
	font-size:13px;
	line-height:1.6;
	padding:0 0 10px 12px;
	margin-left:0;
	border-top:none;
	position:relative; 
}
.element .list_wrp dd:after {
	width:5px; height:5px;
	top:7px; left:0;
	border-top:solid 1.5px #000;
	border-left:solid 1.5px #000;
}
.element ul {
	margin-top:10px;
}
.element ul li {
	font-size:13px;
	line-height:1.6;
}
.element ul li.blue {
	font-size:13px;
}
	
}	/* for SP max-width: 736px */



/*===============================================================
	
　CSRページ
	
===============================================================*/

/*===============================================================
	
　環境への取り組みページ
	
===============================================================*/

.iso .iso_img {
	width:60px;
	margin:0 auto;
	float:right;
	margin-left:10px;
}
.solar .solar_img {
	width:220px;
	margin:0 auto;
	float:right;
	margin-left:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.iso .iso_img {
	width:40px;
}
.solar .solar_img {
	width:100%;
	float:none;
	margin-left:0;
	margin-top:15px;
}	
	
}	/* for SP max-width: 736px */

/*===============================================================
	
　社会貢献活動ページ
	
===============================================================*/

.float_img {
	width:31.25%;
	margin:0 auto;
	float:right;
	margin-left:3%;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.float_img {
	width:100%;
	float:none;
	margin-left:0;
	margin-top:15px;
}
	
}	/* for SP max-width: 736px */

/*===============================================================
	
	CHORIくんページ
	
===============================================================*/

.chara {
	width:300px;
	margin:0 auto;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.chara {
	width:60%;
}	
	
}	/* for SP max-width: 736px */


/*===============================================================
	
	ニュースリリースページ
	
===============================================================*/

/*===============================================================
	
	ビジュアルエディタ部分（フロントおよび入力欄共通）
	
===============================================================*/

html .mceContentBody {
	text-align:left;
	color:#000;
	background: #fff;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
html .mceContentBody {
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody {
	width:auto;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
見出し
-------------------------------------------------------------*/
html .mceContentBody h3 {
	margin-top:40px;
	padding-bottom:5px;
	color:#003b77;
	font-size:18px;
	line-height:1.25;
}

html .mceContentBody h4 {
	margin-top:20px;
	padding-bottom:0px;
	color:#000;
	font-size:16px;
	line-height:2;
	font-weight:bold;
}
html .mceContentBody p {
	margin-top:10px;
	color:#000;
	font-size:15px;
	line-height:2;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody h3 {
	margin-top:20px;
	font-size:15px;
}
html .mceContentBody h4 {
	margin-top:10px;
	font-size:13px;
	line-height:1.6;
}
html .mceContentBody p {
	margin-top:10px;
	font-size:13px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
リンク
-------------------------------------------------------------*/
html .mceContentBody a {
	color: #003b77;
}

html .mceContentBody a:hover {
	color: #0056ae;
	border-bottom-width: 1px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

html .mceContentBody a:hover {
	color: #003b77;
}	
	
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
テキスト
-------------------------------------------------------------*/

html .mceContentBody strong {
}

html .mceContentBody em {
	font-style:italic;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
画像
-------------------------------------------------------------*/
html .mceContentBody img {
	width:auto;
	max-width:700px;
	margin:0 auto;
}
.aligncenter {
	clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody img {
	max-width: 100%;
	height: auto;
	width /***/:auto;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
引用
-------------------------------------------------------------*/
html .mceContentBody blockquote {
	background-color: #eee;
	padding: 1em;
	margin-top: 1em;
}

html .mceContentBody blockquote p {
	margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
リスト
-------------------------------------------------------------*/

html .mceContentBody ul,ol {
	margin-top: 1em;
}

html .mceContentBody ul li {
	list-style-type: disc;
	line-height: 1.2;
	margin-bottom: 0.7em;
	margin-left: 1.5em;
}

html .mceContentBody ol li {
	list-style-type: decimal-leading-zero;
	margin-left: 2.3em;
	line-height: 1.2;
	margin-bottom: 0.7em;
}

html .mceContentBody dl {
	margin-bottom: 1em;
	line-height: 1.2;
}

html .mceContentBody dl dt {
	font-weight: bold;
	font-size: 1.1em;
}

html .mceContentBody dl dd {
	margin-bottom: 0.7em;
	padding-left: 2em;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
テーブル
	
-------------------------------------------------------------*/
html .mceContentBody table {
	width:100%;
	margin-top:1em;
	border-collapse:collapse;
	border:none;
	border-spacing:0;
}

html .mceContentBody table th,
html .mceContentBody table td {
	padding:12px;
	color:#000;
	font-size:14px;
	line-height:1.8;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
	border:1px solid #ddd;
}

html .mceContentBody table th {
	background:#f4f9ff;
	font-weight:bold;
}

html .mceContentBody table td {
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

html .mceContentBody table th,
html .mceContentBody table td {
	font-size:13px;
	line-height:1.6;
	border-top:0;
	display:block;
	padding:7px;
	margin:0;
	width:auto;
	box-sizing:border-box;
}

html .mceContentBody table tr:first-child th {
	border-top:1px solid #ddd;
}
	

}	/* for SP max-width: 736px */


/*===============================================================
	
　リンクページ
	
===============================================================*/

.link_company .table1:first-child {
	 margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.link_company .table1 img {
	width:25%;
	height:auto;
}
		
}	

/*===============================================================
	
　サイトマップページ
	
===============================================================*/

.sitemap {
}
.sitemap li {
	float:left;
	width:33.3333%;
	margin-top:10px;
}
.sitemap li a {
	padding-left:15px;
	color:#000;
	font-size:14px;
	line-height:20px;
	text-decoration:none;
	position:relative;
}
.sitemap li a:hover {
	text-decoration:underline;
}
.sitemap li a:after {
	position:absolute;
	content:" ";
	width:6px; height:6px;
	top:3px; left:0; right:auto;
	margin:auto;
	border-top:solid 2px #003b77;
	border-left:solid 2px #003b77;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.sitemap .head {
	margin-top:30px;
}
.sitemap .head a {
	display:block;
	color:#fff;
	font-size:14px;
	line-height:20px;
	font-weight:bold;
	text-decoration:none;
	background:#003b77;
	padding:7.5px;
}
.sitemap .head a:hover {
	background:#004a96;
}
.sitemap .head + * {
	margin-top:10px;
}
.sitemap .head2 {
	color:#000;
	font-size:14px;
	line-height:20px;
	font-weight:bold;
	margin-top:20px;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.sitemap {
}
.sitemap li {
	width:50%;
	margin-top:2px;
}
.sitemap li a {
	display:inline-block;
	padding-left:10px;
	font-size:13px;
	line-height:16px;
}
.sitemap li a:hover {
	text-decoration:none;
}
.sitemap li a:after {
	width:4px; height:4px;
	top:5px;
	border-top:solid 1.5px #003b77;
	border-left:solid 1.5px #003b77;
}
.sitemap .head {
	margin-top:15px;
}
.sitemap .head a {
	display:block;
	font-size:13px;
	line-height:20px;
	padding:5px;
}
.sitemap .head a:hover {
	background:#003b77;
}
.sitemap .head + * {
	margin-top:5px;
}
.sitemap .head2 {
	font-size:13px;
	line-height:20px;
	margin-top:10px;
}
	
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	locallink	
-------------------------------------------------------------*/
.locallink {
	text-align:left;
	margin-top:-10px;
}
.section_contents .locallink li {
	width:auto;
	display:inline-block;
	margin-right:10px;
	margin-top:10px;
	text-indent:0;
	padding:0;
}
.locallink li a {
	display:block;
	width:100%;
	border:solid 1px #ccc;
	text-decoration:none;
	text-align:center;
	padding:5px 10px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	pagefooter	
-------------------------------------------------------------*/
.pagefooter {
	margin-top:50px !important;
	padding-top:50px;
	border-top:1px solid #003b77;
}
.pagefooter .btn_detail {
	margin-top:0;
}
.pagefooter .btn_detail a {
	color:#fff;
	background:#003b77;
	position:relative;
}
.pagefooter .btn_detail a:hover {
	color:#fff;
	background:#004a96;
}
.pagefooter .btn_detail a:after {
	content:'';
	position:absolute;
	margin:auto;
	top:0; bottom:0;
	right:10px;
	border-right:solid 1px #fff;
	border-bottom:solid 1px #fff;
	width:12px;
	height:12px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	transition: all .3s;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagefooter {
	margin-top:30px !important;
	padding-top:20px;
}
}	/* for SP max-width: 736px */

/* 404 NOT FOUND
----------------------------------------------------------------*/
.notfound {
}
.notfound h3 {
	font-size:25px;
	line-height:30px;
	font-weight:bold;
	color:#b91504;
}
.notfound h4 {
	margin-top:30px;
	font-size:20px;
	line-height:25px;
	font-weight:bold;
}
.notfound li {
	list-style-type:square;
	margin-left:20px;
}
.notfound .box {
	display:block;
	background:#fbf3f2;
	padding:20px;
	margin:20px 0;
}


/*-------------------------------------------------------------
	notice_bar
-------------------------------------------------------------*/
.notice_bar{
	width:100%;
	padding:20px 0;
	color:#fff;
	background:rgba(216,22,26,0.9);
	z-index:1;	
	position:fixed;
	bottom:0;	
	left:0;
	}
.notice_bar p{
	text-align:center;
	line-height:25px;
	}
.notice_bar a{
	color:#fff;
 }
.notice_bar a:hover{
	opacity:0.7;
 }
/* タブレット以下 */
@media screen and (max-width: 960px) {
.notice_bar{
	padding:20px 0;
	}	
.notice_bar p {
	font-size:12px;
	line-height:20px;
	text-align:left;
	padding:0 80px 0 50px;
}	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
csr bnr
-------------------------------------------------------------*/
.csr .bnr {
	margin-top: 50px;
	text-align: center;
}
.csr .bnr img {
	border: 1px solid #ddd;
	box-sizing: border-box;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.csr .bnr {
	margin-top: 40px;
}
.csr .bnr img {
	width:100%;
	max-width: 300px;
}
	

}	/* for SP max-width: 736px */

/*===============================================================
	
	CSRアンケート
	
===============================================================*/
.questionnaire .headline_wrp .headline {
	border: none;
	background: #f7f7f7;
	padding: 10px;
}
.questionnaire .headline_wrp .headline span {
	font-size: 14px;
}
.questionnaire .subhead {
	line-height: 1.5;
}
.questionnaire .content + .content {
}

.questionnaire .narrow_width {
	width: 100%;
}

.questionnaire .read {
  margin-top: 20px;
  border: 1px solid #666;
  padding: 20px;
  box-sizing: border-box;
  
  border: solid 1px #ccc;
	padding: 15px;
}
.questionnaire .read p {
  margin-top: 10px;
}

.questionnaire .form_content {
}
.questionnaire .form_content input.txtinput {
	width: 100%;
	border: 0;
	padding: 10px;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px #ccc;
	/*margin: 10px 0 0 0;*/
	border-radius: 5px;
	-webkit-appearance: none;
	outline: 0;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#year ,
#month ,
#day {
  width: 20%;
}
.questionnaire .form_content dl {
	/*border-top: solid 1px #fff;
	border-bottom: solid 1px #ddd;*/
	margin: 0;	
}

.questionnaire .form_content dt {
	/*padding: 20px 0;*/
	width: 100%;
	margin-right: 2%;
	font-size: 24px;
	color: #003b77;
	line-height: 1.25;
	font-weight: bold;
  margin-top: 40px;	
}
.questionnaire .form_content dd {
	padding: 30px 20px 0 20px;
	max-width: 100%;
	font-size: 14px;
	line-height: 30px;
}
.questionnaire dl dd span {
  padding: 0 2% 0 1%; 
}
.questionnaire .validate p {
	/*background: #fee;*/
	padding: 10px;
	color: #c00;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px;
}
.questionnaire .form_content .validate {
	margin-top: 10px;
	padding-bottom: 15px;
}
.questionnaire .validate {
	margin-top: 10px;
	padding-bottom: 5px;
}
.questionnaire .validate_submit {
  text-align: center;
	margin-top: 30px;
	padding-bottom: 20px;
}
.questionnaire .q_c ul li span {
	padding-left: 10px;
}

.questionnaire .q_c {
	margin-top: 30px;
	padding: 0 20px;
}
.questionnaire .q_c .ex_q + * {
}
.questionnaire .q_c .ex_q {
	border: solid 1px #003b77;
	padding: 15px;
}
.questionnaire .q_c .ex_q p {
	color: #003b77;
	font-size: 16px;
	line-height: 1.5;
	font-weight: bold;
}
.questionnaire .q_c .ex_wrp {
	padding-bottom: 10px;
}

.questionnaire textarea {
	width: 100%;
	border: 0;
	padding: 10px;
  margin-bottom: 30px;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px #ccc;
	/*margin: 10px 0 0 0;*/
	border-radius: 5px;
	-webkit-appearance: none;
	outline: 0;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/*-------------------------------------------------------------
	送信ボタン
-------------------------------------------------------------*/
.questionnaire .form_content .submit {
	margin: 0;
}
.questionnaire .form_content .submit input {
	width: 200px;
	margin: 0 auto;
	display: block;
	color: #fff;
	font-size: 18px;
	line-height: 22px;
	font-weight: bold;
	text-decoration: none;
	background: #003b77;
	padding: 20px 40px;
	border: 2px solid #003b77;
	-webkit-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	transition: all 0.1s linear;
	cursor: pointer;
	-webkit-appearance: none;
}
.questionnaire .form_content .submit input:hover {
	background: #004a96;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.questionnaire .headline_wrp .headline span {
	font-size: 12px;
}
  
.questionnaire .read {
  margin-top: 10px;
	padding: 15px;
}
.questionnaire .read p {
  margin-top: 5px;
}
  
.questionnaire .form_content input.txtinput {
margin-top: 5px;	
}
.questionnaire .form_content input.txtinput, .form_content textarea, .form_content input, .form_content textarea {
	font-size: 12px;	
}	
.questionnaire .form_content dt {
	padding: 10px 0 0 0;
	float: none;
	width: 100%;
	font-size: 12px;
	line-height: 1.6;
  margin-top: 20px;
}
.questionnaire .form_content dd {
	padding: 5px 0 0px 0;
	float: left;
	width: 100%;
	font-size: 12px;
	line-height: 1.6;
}
.questionnaire .form_content .sample {
	margin-top: 5px;
}
.questionnaire .validate p {
	font-size: 12px;
	padding: 7px;
}
.questionnaire .validate {
	margin-top: 15px;
}
.questionnaire .form_content .submit {
	padding: 15px 0;
}
.questionnaire .form_content .submit input {
	width: 100%;
	padding: 10px 0;
	font-size: 14px;
}
.questionnaire .q_c {
	margin-top: 15px;
}
.questionnaire .q_c .ex_q p {
	color: #003b77;
	font-size: 14px;
	line-height: 1.25;
	font-weight: bold;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.form_content .submit
-------------------------------------------------------------*/
.form_content .submit input {
	width:200px;
	padding:15px 20px;
	display:block;
	color:#eee;
	font-size:18px;
	line-height:1.3;
	font-weight:bold;
	text-decoration:none;
	margin: 0 auto;
	margin-top: 40px;
	border:0;
	border-radius:5px;
	background:#ac9455;
	cursor:pointer;
	-webkit-appearance:none;
}
.form_content .submit input:hover {
	background:#937f49;
}


/* タブレット以下 */
@media screen and (max-width: 940px) {
.form_content .submit input {
	width:60%;
}
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.form_content .submit input {
	width:100%;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------	
	two_submits　お問い合わせ確認用submit
-------------------------------------------------------------*/
.submit .two_submits {
	margin-top: 20px
}
.form_content .submit .two_submits form {
	width: 48%;
	padding:0 1%;
}
.form_content .submit .two_submits .backbox {
	float: left;
	margin-right: 0;
}
.form_content .submit .two_submits .sendbox {
	float: right;
	margin-left: 0;
}
.form_content .submit .two_submits input {

}
.form_content .submit .two_submits .backbox input {
	margin-right: 0;
	background: #999;
	border-color: #999;
}
.form_content .submit .two_submits .backbox input:hover {
	background: #aaa;
}
.form_content .submit .two_submits .sendbox input {
	margin-left: 0;
}
.form_content .submit .two_submits form {
	border-top: none;
	border-bottom: solid 1px #fff;
}

.confirm .form_content {
	margin-top: 40px;
}
.confirm .form_content dt,
.confirm .form_content dd{
	padding: 30px 0; 
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.confirm .form_content dt,
.confirm .form_content dd{
	padding: 20px 0; 
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.submit .two_submits {
	margin-top: 30px
}
.submit .two_submits form {
	width: 100%;
	padding:0;
}
.submit .two_submits .backbox input ,
.submit .two_submits .sendbox input {
	margin: 0 auto;
}
.confirm .mail_form dt,
.confirm .mail_form dd{
	padding: 10px 0; 
}
.form_page .confirm h3 {
	margin-top: 20px;
}
}	/* for SP max-width: 736px */


/*===============================================================
	
	蝶理健康宣言ページ
	
===============================================================*/

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	content_health
-------------------------------------------------------------*/
.content_health .img {
  margin-top: 30px;
}
.content_health .img + p {
  margin-top: 30px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_health .img {
  margin-top: 15px;
}
.content_health .img + p {
  margin-top: 15px;
}  

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	declaration
-------------------------------------------------------------*/
.content_health .declaration {
  box-sizing: border-box;
  border: 1px solid #000;
  padding: 35px;
  margin-top: 30px;
}
.content_health .declaration .head {
  color: #003A77;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}
.content_health .declaration .head + p {
 margin-top: 20px;
}
.content_health .declaration .item {
  margin-top: 20px;
}
.content_health .declaration .item .num {
  color: #003A77;
  font-size: 17px;
  line-height: 1.4;
  font-weight: bold;
  margin-top: 20px;
}
.content_health .declaration .item p {
  margin-top: 5px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_health .declaration {
  padding: 20px;
  margin-top: 20px;
}
.content_health .declaration .head {
  font-size: 17px;
}
.content_health .declaration .head + p {
 margin-top: 10px;
}
.content_health .declaration .item {
  margin-top: 10px;
}
.content_health .declaration .item .num {
  font-size: 14px;
  margin-top: 10px;
}
.content_health .declaration .item p {
  margin-top: 5px;
}  

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	pdca	
-------------------------------------------------------------*/
.content_health .pdca {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
  margin-top: 30px;
}
.content_health .pdca .img {
	width: 300px;
  margin-top: 0;
}
.content_health .pdca .txt {
	flex: 1;
  margin-left: 20px;
}
.content_health .pdca .txt .item {
  position: relative;
  padding-left: 65px;
}
.content_health .pdca .txt .item + .item {
  margin-top: 10px;
}
.content_health .pdca .txt .item:after {
  content: '';
  position: absolute;
  top: 0; left: 0;
  margin: auto;
  width: 50px;
  height: 50px;
  background: #000;
  border-radius: 50%
}
.content_health .pdca .txt .item_p:after {
  background: #5DAFE2;
}
.content_health .pdca .txt .item_d:after {
  background: #EA8F7A;
}
.content_health .pdca .txt .item_c:after {
  background: #F2CD70;
}
.content_health .pdca .txt .item_a:after {
  background: #55D871;
}
.content_health .pdca .txt .item .head {
  font-size: 17px;
  margin-top: 0;
}
.content_health .pdca .txt .item p {
  font-size: 15px;
  line-height: 1.6;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_health .pdca {
  display: block;
  margin-top: 15px;
}
.content_health .pdca .img {
	width: 50%;
  margin: 0 auto;
}
.content_health .pdca .txt {
	width: 100%;
  margin-left: 0;
}
.content_health .pdca .txt .item {
  padding-left: 50px;
  margin-top: 15px;
}
.content_health .pdca .txt .item + .item {
  margin-top: 15px;
}
.content_health .pdca .txt .item:after {
  width: 40px;
  height: 40px;
}
.content_health .pdca .txt .item .head {
  font-size: 14px;
  margin-top: 0;
}
.content_health .pdca .txt .item p {
  font-size: 13px;
} 

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	list	
-------------------------------------------------------------*/
.content_health .list {
  margin-top: 20px;
}
.content_health .list li {
  font-size: 15px;
  line-height: 1.5;
  font-weight: bold;
  text-indent: -2em;
  padding-left: 2em;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_health .list {
  margin-top: 15px;
}
.content_health .list li {
  font-size: 14px;
}  

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	box	
-------------------------------------------------------------*/
.content_health .box {
  margin-top: 60px;
}
.content_health .headline_wrp + .box {
  margin-top: 30px;
}
.content_health .box .head {
  color: #006BB7;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  padding: 5px 10px;
  padding-left: -webkit-calc(2em + 5px);
  padding-left: calc(2em + 5px);
  text-indent: -2em;
  border: 1px solid #006BB7;
}
.content_health .box .head + p {
  margin-top: 20px;
}
.content_health .box .subhead {
  position: relative;
  color: #003A77;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 40px;
  margin-top: 20px;
}
.content_health .box .subhead2 {
  font-size: 15px;
  line-height: 2;
}
.content_health .box .subhead .num {
  position: absolute;
  top: 0; left: 0;
  margin: auto;
  width: 30px;
  height: 30px;
  color: #fff;
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
  background: #003A77;
  border-radius: 50%;
}
.content_health .box .subhead + p {
  margin-top: 10px;
}
.content_health .box .img_caption {
  color: #006BB7;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  margin-top: 15px;
}
.content_health .box .tag {
  display: inline-block;
  color: #003A77;
  font-size: 17px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 5px 7px;
  margin-top: 20px;
  border: 1px solid #003A77;
  box-sizing: border-box;
}
.content_health .box .tag + p {
  margin-top: 10px;
}
.content_health .box .imgs {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.content_health .box .imgs .img {
  margin-right: 30px;
  border: 1px solid #ddd;
}
.content_health .box .imgs .img img {
  width: auto;
  height: 250px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_health .box {
  margin-top: 20px;
}
.content_health .headline_wrp + .box {
  margin-top: 15px;
}  
.content_health .box .head {
  font-size: 15px;
  padding: 2px 5px;
  padding-left: -webkit-calc(2em + 2px);
  padding-left: calc(2em + 2px);
}
.content_health .box .head + p {
  margin-top: 15px;
}
.content_health .box .subhead {
  font-size: 15px;
  padding: 0;
  padding-left: 25px;
  margin-top: 15px;
  background: none;
}
.content_health .box .subhead2 {
  font-size: 14px;
  line-height: 1.5;
}  
.content_health .box .subhead .num {
  width: 20px;
  height: 20px;
  font-size: 15px;
}
.content_health .box .subhead + p {
  margin-top: 5px;
}
.content_health .box .img_caption {
  font-size: 13px;
  margin-top: 10px;
}
.content_health .box .tag {
  font-size: 14px;
  padding: 5px;
  margin-top: 15px;
}
.content_health .box .tag + p {
  margin-top: 5px;
}
.content_health .box .imgs {
}
.content_health .box .imgs .img {
  margin-right: 10px;
}
.content_health .box .imgs .img img {
  width: auto;
  height: 30vw;
}  

}	/* for SP max-width: 736px */



/*===============================================================
	
	arw_red
	
===============================================================*/
.arw_red {
	display: inline-block;
	position: relative;
	width: 25px;
	height: 12px;
}
.arw_red::after {
	content:'';
	position:absolute;
	top: 0; bottom: 0; left: 0; right: 0;
	margin: auto;
	width:10px;
	height:10px;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 10px solid #EA8F7A;
	border-right: 10px solid transparent;

	transform: translate(3px,0);
	box-sizing:border-box;
	transition:all .3s;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}/* for SP max-width: 736px */

/*===============================================================
	
	health_nintei
	
===============================================================*/
.health_nintei {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items: flex-start;
}
.health_nintei .item {
	width: 48.5%;
	margin-top: 20px;
	border: solid 1px #ddd;
	padding: 15px;
	box-sizing: border-box;
	min-height: 320px;
}
.health_nintei .item .title {
	font-size: 17px;
	line-height: 1.5;
	color: #003A77;
	text-align: center;
	background: #eee;
	padding: 8px 5px;
	box-sizing: border-box;
}
.health_nintei .item_detail {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items: flex-start;
	box-sizing: border-box;
}
.health_nintei .item .img {
	width: 40%;
	margin-top: 15px;
}
.health_nintei .item .img img {
	width:100%; height: auto;
}
.health_nintei .item .txt {
	width: 54%;
	margin-top: 15px;
}
.health_nintei .item .txt p {
	font-size: 14px;
	line-height: 1.6;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.health_nintei .item {
	width: 100%;
	padding: 15px;
	min-height: inherit;
}
.health_nintei .item .title {
	font-size: 15px;
}
.health_nintei .item .txt p {
	font-size: 13px;
	line-height: 1.6;
}

}/* for SP max-width: 736px */

/*===============================================================
	
	ir_report
	
===============================================================*/
.ir_report .box {
	padding: 25px;
}
.ir_report .box_w {
	padding-top: 0;
}
.ir_report .box_lb {
	background: #e7f2ff;
}
.ir_report .subhead_rl {
  color:#003b77;
  font-size:20px;
	line-height:1;
	font-weight:bold;
	padding-left: 10px;
  border-left: 5px solid #006BB7;
}
.ir_report .box .subhead_rl + * {
	margin-top: 20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.ir_report .subhead_rl {
	font-size:18px;
}
	
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.ir_report .box {
	padding: 15px;
}
.ir_report .box_w {
	padding-top: 5px;
}  
.ir_report .subhead_rl {
	font-size:15px;
	padding-left:10px;
  border-left: 5px solid #006BB7;
}
.ir_report .box .subhead_rl + * {
	margin-top: 15px;
}  

}	/* for SP max-width: 736px */

