@charset "utf-8";

/* ===========================================================

	Title:	common.css
	Created:	2016-10-26

=========================================================== */
/*
	header
	global-navigation
	contens
	topicpath
	main
	aside
	btPageTop
	footer

=========================================================== */
/*
	body

=========================================================== */
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
}

html.f-resize {
	font-size: 75%;
}

body {
	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	color: #111;
	text-align: center;
	font-size: 1.0rem;
}

body {
  -webkit-text-size-adjust: 100%;
}

@media all and (-ms-high-contrast: none) {
body {
	font-family: "メイリオ", Meiryo, sans-serif;
}
}
html * {
	max-height: 999999px;
} /* Chrome font size adjust  */

/* ===========================================================

	header

=========================================================== */

header {
	position: fixed;
	width: 100%;
	height: 100px;
	background-color: rgba(38, 77, 54,1);
	z-index: 9000;
	font-size: 1.6rem;
	color: #fff;
	top: 0;
	-webkit-transition: all .2s linear .2s;
	transition: all .2s linear .2s;
}
header.fixed {
	background-color: rgba(38, 77, 54,0.9);
}
/* header

----------------------------------------------------------- */
.header {
}
.header a:link, .header a:visited {
	color: #fff;
	text-decoration: none;
}
.header a:hover {
	text-decoration: none;
}

@media screen and (max-width: 1279px) {
.header {
	width: 100%;
	min-width: 100% !important;
	height: 100px;
}
}
.header .head-inner {
	margin: 0 28px;
}
/* logo


----------------------------------------------------------- */
.header h1 {
	float: left;
	width: 43%;
	margin: 0;
	padding: 21px 0 0 0;
	font-size: 15px;
	font-weight: normal;
	line-height: 24px;
	text-align: left;
}

.header h1 a {
	float: left;
	width: 166px;
	margin: 0 auto;
}

.header h1 span {
	display: inline-block;
	text-align: left;
	margin-left: 22px;
	margin-top: 16px;
	float: left;
}

@media screen and (max-width: 1279px) {
	.header .head-inner {
    margin: 0 15px;
	}

	.header h1{
		width: 100%;
		padding: 40px 0 0 0;
	}
		.header h1 a {
    float: left;
    width: 30%;
		max-width: 120px;
    margin: 0 auto;
    padding: 0;
	}

	.header h1 img {
    /* height: 46px; */
    width: 100%;
    height: auto;
	}

	.header h1 span {
    display: inline-block;
    text-align: left;
		margin-left: 0;
    padding-left: 15px;
    margin-top: 8px;
    float: left;
    font-size: 12px;
    width: 70%;
    line-height: 1.6;
	}
}

@media screen and (max-width: 767px) {
}

@media screen and (max-width: 480px) {
	.header h1 span {
    margin-top: 10px;
    font-size: 11px;
	}

	.header h1 span br{
		display: none;
	}
}

@media screen and (max-width: 375px) {
	.header h1 a {
    width: 40%;
	}

	.header h1 span {
		margin-left: 0;
    padding-left: 2vw;
    margin-top: 1vw;
    font-size: 10px;
    width: 60%;
    line-height: 1.4;
	}
}

/*header-navigation
----------------------------------------------------------- */
.header-navigation {
	margin: 20px 0 0 0;
	text-align: right;
}

@media screen and (max-width: 1279px){
	.header nav{
	  float: none;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
	}

	.header nav .header-navigation{
    text-align: left;
		margin: 10px 0 0 0;
	}
}

/*head-list
----------------------------------------------------------- */
.header-list {
	margin: 0;
	padding: 0 10px;
	line-height: 13px;
}

.header-list li {
	display: inline-block;
	font-size: 13px;
	line-height: 13px;
	margin: 0 10px;
}

.header-list li a {
	opacity: 0.75;
}

.header-list #btn_fontsize a:before {
	content: "a/A";
}

.f-resize .header-list #btn_fontsize a:before {
	content: "A/a";
}

/* code
----------------------------------------------------------- */
.header .stock-code {
	opacity: 0.7;
}

.header .stock-code .code {
	margin-left: 0.5rem;
	margin-right: 1rem;
}

/* hed-language
----------------------------------------------------------- */
@media screen and (max-width: 1279px){
	.header-list{
		float: left;
	}

	.header-list li{
		margin: 0 2vw;
		float: right;
	}
	.header-list li:nth-child(2),.header-list li:nth-child(4){
		display: none;
	}

	.header .stock-code .code {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
	}
}

.header ul.hed-language {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0;
	font-size: 1.3rem;
}

ul.hed-language li {
	margin: 0;
}

ul.hed-language li a {
	display: block;
	width: 80px;
	height: 80px;
	line-height: 80px;
	text-align: center;
	color: #fff;
	background-color: #5d785f;
}

ul.hed-language li a:hover {

	opacity: 0.8;

	text-decoration: none;

}

ul.hed-language li a {

	width: 40px;

	height: 35px;

	line-height: 35px;

}

}

/* header-search





----------------------------------------------------------- */





.header-search {

	position: absolute;

	top: 0;

	right: 80px;

	display: none;

}

.header-search form {

	overflow: hidden;

	opacity: 0;

	height: 0;

	line-height: 0;

	width: 100%;

	background-color: #fff;

	position: absolute;

	top: 100px;

	left: 0;

	z-index: 100;

	-webkit-transition: all .3s ease-in-out 0s;

	transition: all .3s ease-in-out 0s;

}

.header-search form.active {

	opacity: 1;

	height: 70px;

	line-height: 70px;

}

.header-search form input[type="text"] {

	font-size: 16px;

	font-size: 1.6rem;

	height: 70px;

	line-height: 70px;

	margin: 0;

	padding: 0 30px;

	width: 100%;

	display: block;

	float: left;

	border: none;

	background: none;

	color: #000;

}

.header-search form input:focus {

	outline: none !important;

	background: none;

}

.header-search form input[type="submit"] {

	margin: 0;

	padding: 0;

	height: 70px;

	line-height: 70px;

	width: 15px;

	float: right;

	border: none;

	background-color: inherit;

	/*　Scott Kellum Method */



	overflow: hidden;

	text-indent: 100%;

	white-space: nowrap;

	display: none;

}



@media screen and (max-width: 1279px) {





}

/* ===========================================================





	global-navigation





=========================================================== */















nav {

	float: right;

	width: 57%;

}

.header .global-navigation {

	text-align: right;

	line-height: 1;

}

.global-navigation ul.gn {

	display: inline-block;

	margin: 0;

}

.global-navigation > ul.gn > li {

	position: relative;

	display: inline-block;

	vertical-align: middle;

	margin: 0;

	padding: 0;

}

.global-navigation ul.gn a:link, .global-navigation ul.gn a:visited {

	color: #fff;

	font-size: 16px;

	line-height: 16px;

	padding: 24px 0 24px 0;

}

.global-navigation ul.gn > a {

	color: #fff;

	display: none;

}

.global-navigation ul.gn a:hover {

	text-decoration: none;

}

.global-navigation ul.gn li a.gn-btn {

	display: block;

	width: 100%;

	line-height: 16px;

	font-size: 16px;

	color: #fff;

	text-align: center;

}

.global-navigation ul.gn li a span {

	display: block;

	padding: 0 20px;

	border-left: solid 1px #5d785f;

	position: relative;

	transition: .2s ease-in-out;

}

.global-navigation ul.gn li:first-child a span {

	border-left: none;

}

.global-navigation ul.gn li a.gn-btn:hover {

	color: #fff;

}



.global-navigation ul.gn li a span:before{

    content: "";

    display: block;

    border: 1px solid #5bb43b;

    position: absolute;

    bottom: -10px;

    width: 1em;

    left: 50%;

    margin-left: -0.5em;

		opacity: 0;

		transition: .2s ease-in-out;

}

.global-navigation ul.gn li a.current span:before,

.global-navigation ul.gn li a.gn-btn:hover span:before{

	opacity: 1;

	width: 3em;

	margin-left: -1.5em;

}



.global-navigation ul.gn .secondary {

	display: none;

	position: absolute;

	top: 64px;

	left: 50%;

	z-index: 999900;

	width: 240px;

	min-width: 240px;

	text-align: left;

	background-color: rgba(38, 77, 54,0.9);

	padding: 20px 10px 20px;

	/* box-shadow */

	box-shadow: 0px 15px 22px -10px rgba(0,0,0,0.3);

	-moz-box-shadow: 0px 15px 22px -10px rgba(0,0,0,0.3);

	-webkit-box-shadow: 0px 15px 22px -10px rgba(0,0,0,0.3);

}

.global-navigation ul.gn #gn-ir .secondary {

	left: inherit;

	right: -30px;

}

.global-navigation ul.gn .secondary:before, .global-navigation ul.gn .secondary:after {

	content: "";

	width: 50%;

	height: 3px;

	display: inline-block;

	position: absolute;

	top: 0;

}

.global-navigation ul.gn .secondary li {

	margin: 0;

}

.global-navigation ul.gn .secondary li ul {

	display: none;

}

.global-navigation ul.gn .secondary li a {

	display: block;

	padding: 12px 20px 12px 10px;

	color: #fff;

	font-size: 14px;

	font-size: 1.4rem;

	transition: .2s ease-in-out;

	position: relative;

}



.global-navigation ul.gn .secondary li a:hover{

	background-color: rgba(38, 77, 54,1);

}



.global-navigation ul.gn .secondary li a:after {

	position: absolute;

	content: "";

	vertical-align: middle;

	top: 12px;

	right: 10px;

	font-size: 1.3rem;

	content: "\f105";

	font-family: FontAwesome;

}



.global-navigation ul.gn .secondary li a:link, .global-navigation ul.gn .secondary li a:visited {

	color: #fff;

	text-decoration: none;

}

.global-navigation ul.gn .secondary li a:hover:after {

}



@media screen and (min-width: 1280px) {

	.global-navigation ul.gn #gn-stockholder{

		display: none;

	}

}

/* ===========================================================





	slicknav_nav





=========================================================== */





.slicknav_menu {

	display: none;

}



@media screen and (max-width: 1279px) {

.header .global-navigation {

	position: inherit;

	top: inherit;

	left: inherit;

	background: none;

	width: 100%;

	height: auto;

	border: none;

}

.gn {

	display: none !important;

}

.slicknav_menu {

	font-size: 16px;

 *zoom: 1;

	display: block;

	background-color: transparent;

	padding: 0;

	position: fixed;

	top: 0;

	right: 0;

	z-index: 99999;

}

.slicknav_menu * {

	box-sizing: border-box;

}

.slicknav_menu * {

	box-sizing: border-box;

}

.slicknav_menu_inner {

	height: 100%;

	position: relative;

	overflow: scroll;

	overflow-x: hidden;

	overflow-y: auto;

}

.slicknav_menu:before {

	content: " ";

	display: table;

}

.slicknav_menu:after {

	content: " ";

	display: table;

	clear: both;

}

.slicknav_menu .slicknav_icon-bar {

	background-color: #fff;

}

/* ハンバーガーメニュー */



.slicknav_btn {

	position: relative;

	text-decoration: none;

	background-color: #5bb43b;

	display: block;

	vertical-align: middle;

	float: right;

	width: 40px;

	height: 35px;

	cursor: pointer;

}

.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {

	margin-top: 3px;

}

.slicknav_menu .slicknav_menutxt {

}

.slicknav_menu .slicknav_icon {

	position: relative;

	display: block;

	width: 40px;

	height: 35px;

}

.slicknav_menu .slicknav_no-text {

	margin: 0;

}

.slicknav_menu .slicknav_icon-bar {

	display: block;

	width: 20px;

	height: 2px;

	margin: 12px 0 0 10px;

	transition: .3s ease-in-out;

}



/* close-btn */



.slicknav_menu .slicknav_open .slicknav_icon-bar {

}

.slicknav_menu .slicknav_open .slicknav_icon-bar:first-child {

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

	margin-top: 17px;

}

.slicknav_menu .slicknav_open .slicknav_icon-bar:nth-of-type(2) {

	opacity: 0

}

.slicknav_menu .slicknav_open .slicknav_icon-bar:last-child {

	-webkit-transform: rotate(-45deg);

	transform: rotate(-45deg);

	margin-top: -7px;

}

/* menu */

.slicknav_nav {

	clear: both;

	text-align: left;

	background-color: #5bb43b;

	color: #fff;

	font-size: 14px;

	border-top: none;

	/*navi scroll*/



	width: 100% !important;

	height: 100%;

	position: fixed;

	top: 35px;

	left: 0;

	overflow: scroll !important;

	display: block;

	margin: 0;

	padding: 0 0 36px;

}

.slicknav_nav li {

	display: block;

	margin: 0;

	padding: 0;

	clear: both;

}

.slicknav_nav a.gn-btn {

	display: block !important;

	padding: 20px !important;

	color: #fff;

	font-weight: bold;

	border-bottom: solid 1px #264d36;

}

.slicknav_nav a.gn-btn br {

	display: none;

}

.slicknav_nav a.gn-btn:hover {

	text-decoration: none !important;

}

.slicknav_nav a.gn-btn span {

	color: #fff;

}

.slicknav_nav ul.secondary {

	display: block;

	overflow: hidden;

	width: 100% !important;

	margin: 0 !important;

	padding: 0;

	background-color: #264d36;

}

.slicknav_nav ul li + li {

	border-top: solid 1px #202020;

}

.slicknav_nav ul li a {

	display: block;

	padding: 20px;

	text-decoration: none;

	color: #fff;

	line-height: 18px;

	font-size: 12px !important;

}

/* 3rd */















.slicknav_nav ul li ul {

	border-top: solid 1px #202020;

	padding-left: 20px;

	margin-bottom: 0;

}

/* slicknav option */















.slicknav_nav .slicknav_arrow {

}

.slicknav_nav .slicknav_item {

	position: relative;

	cursor: pointer;

}

.slicknav_nav .slicknav_item .slicknav_arrow i {

	position: absolute;

	right: 10px;

	top: 50%;

	width: 20px;

	height: 20px;

	line-height: 17px;

	margin: -10px 0 0;

	text-align: center;

	color: #fff;

	border: solid 1px #fff;

	font-size: 15px;

}

.slicknav_nav .slicknav_item .slicknav_arrow i.icon-plus:before {

	content: "+" !important;

}

.slicknav_nav .slicknav_item .slicknav_arrow i.icon-minus:before {

	content: "-" !important;

}

.slicknav_nav .slicknav_item a {

	display: inline;

	padding: 0;

	margin: 0;

}

.slicknav_nav .slicknav_row {

	display: block;

}

.slicknav_nav .slicknav_row:hover {

	-webkit-border-radius: 0;

	-moz-border-radius: 0;

	border-radius: 0;

	background: none;

	color: inherit;

	text-decoration: none;

}

}

/* ===========================================================





	contens





=========================================================== */





.contents-wrap {

	width: 100%;

	margin: 100px auto 0;

	padding-left: 246px;

	text-align: left;

}

.contents {

	margin: 0 auto;

	padding: 60px;

	clear: both;

	overflow: auto;

}

.cont-inner {

	max-width: 1320px;

	min-width: 900px;

	margin: 0 auto;

	font-size: 1.5rem;

	line-height: 1.6;

	color: #494949;

}

.cont-inner a:link, .cont-inner a:visited {

	text-decoration: underline;

}

.cont-inner a:hover {

	text-decoration: none;

}



@media screen and (max-width: 1279px) {

.contents-wrap {

	width: auto;

	margin: 100px 0 0 0;

	padding: 0 0 0 0;

}



.contents {

	margin: 15px;

	padding: 0;

	clear: both;

	overflow:inherit;

}



.cont-inner {

	max-width:inherit;

	min-width:inherit;

}

}

/* ===========================================================





	topic path





=========================================================== */





.topic-path {

	clear: both;

	width: 100%;

	margin: 0 auto 20px auto;

}

.topic-path ol {

	clear: both;

	font-size: 11px;

	font-size: 1.1rem;

	margin: 0;

}

.topic-path ol li {

	float: left;

	margin: 0;

}

.topic-path ol li:before {

	content: "/";

	padding: 0 12px;

	color: #ccc !important;

}

.topic-path ol li:first-child {

	padding: 0

}

.topic-path ol li:first-child:before {

	content: "";

	padding: 0;

}

.topic-path ol li a {

}

.topic-path ol li:before {

	content: "/";

}

.topic-path ol a:link, .topic-path ol a:visited {

	text-decoration: underline;

	color: #333;

}

.topic-path ol a:hover {

	text-decoration: none;

}



@media screen and (max-width: 1279px) {

.topic-path {

	width: auto;

	margin: 0 0 10px;

	display: none;

}

.topic-path ol {

	width: auto;

	margin: 0 10px;

}

}

/* ===========================================================







	title







=========================================================== */



.title {

	background-color: #efefef;

	padding: 20px 30px;

}

.title h1 {

	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";

	font-size: 3.0rem;

	letter-spacing: 1px;

	line-height: 1.2;

	padding: 0;

	margin: 0;

	position: relative;

}

.title h1.size2 {

	font-size: 30px;

	font-size: 3.0rem;

	letter-spacing: 1px;

	line-height: 1.2;

}

.title h1 .sub {

	font-size: 20px;

	font-size: 2.0rem;

	letter-spacing: 0;

}



@media screen and (max-width: 1279px) {



	.title{

		padding: 20px 15px;

		margin: 0 0 20px 0;

	}

.title h1 {

	font-size: 26px;

	font-size: 2.6rem;

	padding: 0 0 0 0;

	margin: 0 0 0;

}

.title h1:before {

	width: 30px;

	height: 30px;

}

.title h1:after {

	top: 15px;

	left: 22px;

	width: 15px;

	height: 15px;

}

}

/* ===========================================================





	main





=========================================================== */



main {

	z-index: 1;

	box-sizing: border-box;

	width: 100%;

	border-left: 1px solid #e6e6e6;

}

main section {

	margin-bottom: 60px !important;

}

.cont-margin {

	margin-bottom: 40px !important;

}



@media screen and (max-width: 1279px) {
	main {
		width: 100%;
		float: none;
	}

	main section {
		margin-bottom: 30px !important;
	}
}

/* tit

----------------------------------------------------------- */
main h2 {
	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 0 0 30px;
	padding: 20px 0;
	position: relative;
	font-size: 2.6rem;
	line-height: 1.4;
	color: #000;
}

main h2:before {
	content: " ";
	width: 4.8rem;
	height: 3px;
	display: inline-block;
	border-bottom: solid 3px #5bb43b;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

main h2:after {
	content: " ";
	width: 100%;
	height: 3px;
	display: inline-block;
	border-bottom: solid 3px #dcdcdc;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

main h2 .sub {
	font-size: 16px;
	font-size: 1.6rem;
}

main h3 {
	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 3rem 0 2rem 0;
	padding: 1.6rem 0 0.8rem 2rem;
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.2;
	position: relative;
	border-bottom: solid 2px #dcdcdc;
	color: #000;
}

main h3:before {
	content: " ";
	width: 10px;
	height: 10px;
	display: inline-block;
	border-bottom: solid 10px #5bb43b;
	position: absolute;
	margin: 0;
	top: 2.2rem;
	left: 0;
	z-index: 2;
}

main h3 .sub {
	font-size: 14px;
	font-size: 1.4rem;
}

main h4 {
	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 0;
	padding: 1.6rem 0 1.6rem 2rem;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.2;
	position: relative;
	color: #000;
}

main h4:before {
	content: " ";
	width: 10px;
	height: 3px;
	display: inline-block;
	border-bottom: solid 3px #5bb43b;
	position: absolute;
	margin: 0 0 0;
	top: 2.4rem;
	left: 0;
	z-index: 2;
}

main h5 {
	margin: 0 0 15px;
	color: #000;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.2;
}

main h6 {
	margin: 0 0 10px;
	color: #000;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.2;
}

main .txt-ss {
	font-size: 10px;
	font-size: 1.0rem;
}

main .txt-s {
	font-size: 12px;
	font-size: 1.2rem;
}

main .txt-l {
	font-size: 18px;
	font-size: 1.8rem;
}

main .txt-ll {
	font-size: 26px;
	font-size: 2.6rem;
}

h5 {
}

h6 {
}

em {
	color: #eb5504;
	font-weight: bold;
}

strong {
	font-weight: bold!important;
}

main .underline {
	/*text-decoration: underline;
	text-decoration-color: #5bb43b;*/
	border-bottom: solid 1px #111;
}

.read {
	font-size: 20px;
	font-size: 2.0rem;
	line-height: 35px;
	letter-spacing: 1px;
}

.ffReset {
	font-family: "Noto Sans Japanese", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" !important;
}
@media screen and (max-width: 1279px) {
main h2 {
	font-size: 22px;
	font-size: 2.2rem;
	margin: 0 0 15px;
	padding: 10px 0;
}

main h3 {
		font-size: 20px;
		font-size: 2.0rem;
	}
}

/* text

----------------------------------------------------------- */

p, ul, ol, dl, .indent-table {
	margin: 0 0 20px;
}
ul li, ol li {
	margin: 0;
}
ol ol {
	padding: 5px 0 0;
}

/* link

----------------------------------------------------------- */
a:link, a:visited {
	text-decoration: none;
	color: #5bb43b;
}

a:hover {
	text-decoration: underline;
}

.link-reverse a:link, .link-reverse a:visited, a.link-reverse:link, a.link-reverse:visited {
	color: #333;
	text-decoration: underline;
}

.link-reverse a:hover, a.link-reverse:hover {
	color: #5bb43b;
	text-decoration: none;
}
/* link-arrow */

.cont-inner .link-a:link, .cont-inner .link-a:visited {

	position: relative;

	text-decoration: none;

	color: #333333;

	padding-left: 14px;

}

.cont-inner .link-a:hover {

	color: #5bb43b;

}

.cont-inner .link-a::before {

	position: absolute;

	top: 0;

	left: 0;

	font-size: 0.8rem;

	content: "▶︎";

	font-family: FontAwesome;

	color: #5bb43b;

}

.cont-inner .link-a:hover:before {

	text-decoration: none !important;

}

.link-b, .link-b a {

	position: relative;

	padding-left: 15px;

}

.link-b:before, .link-b a:before {

	position: absolute;

	content: "";

	top: 50%;

	left: 0;

	width: 6px;

	height: 6px;

	margin-top: -3px;

	border-top: 1px solid #5bb43b;

	border-right: 1px solid #5bb43b;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}





.cont-inner .link-c:link, .cont-inner .link-c:visited {

	position: relative;

	text-decoration: none;

	color: #333333;

	/*padding-left: 14px;*/

}

.cont-inner .link-c:hover {

	color: #5bb43b;

}



/* blank */















.blank {

	background-image: url(/assets/img/ic_blank_a.svg) !important;

	background-size: 9px 9px !important;

	background-repeat: no-repeat !important;

	background-position: right 50% !important;

	padding: 0 12px 0 0 !important;

}

/* link-button */















.link-button-a, .link-button-b, .link-button-c, .link-button__open, .link-button__close {

	padding: 0.8rem 1.5rem;

	display: inline-block;

	color: #5bb43b !important;

	font-size: 13px;

	text-align: center;

	border: solid 1px #5bb43b;

	position: relative;

	overflow: hidden;

	-webkit-transition: all 0.2s ease;

	-moz-transition: all 0.2s ease;

	-o-transition: all 0.2s ease;

	transition: all .2s ease;

	text-decoration: none !important;

}

.link-button-a:hover, .link-button-b:hover, .link-button-c:hover, .link-button__open:hover, .link-button__close:hover {

	background: #5bb43b;

	border: solid 1px #5bb43b;

	text-decoration: none;

	color: #fff !important;

}

.link-button-a:before, .link-button-b:before, .link-button-c:before, .link-button__open:before, .link-button__close:before, .link-button__close:after {

	position: absolute;

	content: " ";

	vertical-align: middle;

}

/* link-button-a */















.link-button-a:before {

}

.link-button-a:hover:before {

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

}

.link-button-c {

	color: #fff !important;

	border: solid 1px #fff;

}

.link-button-c:hover {

	background: #fff;

	border: solid 1px #fff;

	color: #5bb43b !important;

}

/* link-button-b */















.link-button-b {

	color: #fff !important;

	border: solid 1px #fff;

}

.link-button-b:hover {

	background: #fff;

	border: solid 1px #fff;

	color: #005BAC !important;

}

.link-button-b:before {

	top: 50%;

	left: 35px;

	width: 5px;

	height: 5px;

	margin: -4px 0 0 0;

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.link-button-b:hover:before {

	border-top: 1px solid #005BAC;

	border-right: 1px solid #005BAC;

}

/* link-button__open */















.link-button__open:before {

	top: 50%;

	left: 35px;

	width: 5px;

	height: 5px;

	margin: -6px 0 0 0;

	border-right: 1px solid #005BAC;

	border-bottom: 1px solid #005BAC;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.link-button__open:hover:before {

	border-right: 1px solid #fff;

	border-bottom: 1px solid #fff;

}

/* link-button__close */















.link-button__close:before, .link-button__close:after {

	top: 50%;

	left: 27px;

	width: 14px;

	height: 14px;

	border-right: 1px solid #005BAC;

}

.link-button__close:before {

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

	margin: -13px 0 0 0;

}

.link-button__close:after {

	-webkit-transform: rotate(-45deg);

	transform: rotate(-45deg);

	margin: -3px 0 0 0;

}

.link-button__close:hover:before, .link-button__close:hover:after {

	border-right: 1px solid #fff;

}

.accord-btn {

	display: block;

}

/* banner */















ul.banner {

}

.banner li {

	display: inline-block;

	margin: 0 10px 10px 0;

	background-color: #5bb43b;

}

.banner a {

	transition: .2s ease-in-out;

}

.banner a:hover {

	opacity: 0.95;

}

.banner img {

	vertical-align: middle;

}

/* table















----------------------------------------------------------- */















table {

	width: 100%;

	margin: 0 0 20px;

	border-top: solid 1px #b5b5b5;

}



@media screen and (max-width: 1279px) {

table {

	width: 100%;

}

}

table th {

	width: 25%;

	padding: 10px 16px;

	border-bottom: solid 1px #b5b5b5;

	background: #e6e6e6;

	font-weight: bold;

	text-align: left;

}

table td {

	border-bottom: solid 1px #b5b5b5;

	border-right: solid 1px #b5b5b5;

	padding: 10px 16px;

	vertical-align: top;

	text-align: left;

}

table tr:nth-child(odd) td {

}

table td:last-child {

	border-right: none;

}

table img {

	vertical-align: text-bottom;

}

table th.th-2nd, table tr.th-2nd th {

	background: #f5f5f5 !important;

}

table td.td-2nd {

	vertical-align: middle;

	text-align: center;

	background: #f2f6fa;

}

table.td-padding-mini td {

	padding: 2px 8px;

}

table.padding-mini th, table.padding-mini td {

	padding: 2px 8px;

}

table .sub-total th, table .sub-total td, table .sub-total {

	background: #f2f6fa;

	border-right: solid 1px #fff;

}

table .total th, table .total td, table .total {

	background: #555;

	color: #fff;

	border-right: solid 1px #fff;

}

/* th-top */















table.th-top th {

	width: auto;

	text-align: center;

	border-right: solid 1px #ddd;

}

/*table.th-top th:last-child {*/

/*	border-right: none;*/

/*}*/

table.th-top td {

}

table.th-top th.firstChild, table.th-top td.firstChild {

}

table.th-top th.firstChild-none {

	border-left: solid 1px #fff !important;

}

table.th-top td.firstChild-none {

	border-left: solid 1px #ccc !important;

}

/* min-table */















table.min-table {

	width: 600px !important;

	margin-left: 300px !important;

}

table.important-left td, table.important-left th {

	text-align: left !important;

}

table.important-center td, table.important-center th {

	text-align: center !important;

}

table.important-right td, table.important-right th {

	text-align: right !important;

}

tr.important-left td, tr.important-left th {

	text-align: left !important;

}

tr.important-center td, tr.important-center th {

	text-align: center !important;

}

tr.important-right td, tr.important-right th {

	text-align: right !important;

}

tr td.important-left, tr th.important-left {

	text-align: left !important;

}

tr td.important-center, tr th.important-center {

	text-align: center !important;

}

tr td.important-right, tr th.important-right {

	text-align: right !important;

}

/* scroll-table , responsive-table*/















.scroll-table {

}

.scroll-table-coution {

	display: none;

}

.responsive-table {

}



@media screen and (max-width: 1279px) {

.table-wrap {

	overflow: auto;

	position: relative;

}

.scroll-table th, .scroll-table td {

	white-space: nowrap;

}

.scroll-table-coution {

	display: block;

	margin: 0 0 5px;

	font-size: 12px;

	color: #999;

	padding: 0 0 0 45px;

	background-image: url(../img/common/ic/ic_scroll_side.png);

	background-size: 37px 14px;

	background-position: 0 50%;

	background-repeat: no-repeat;

}

.responsive-table {

	width: 100%;

	border-left: none;

}

.responsive-table th {

	display: block;

	width: auto;

	border-right: none;

}

.responsive-table td {

	display: block;

	width: auto !important;

	border-right: none;

}

.responsive-table .nbsp {

	display: none;

}

.responsive-table th.cell-width-1, .responsive-table td.cell-width-1 {

	width: auto !important;

}

}

/* img















----------------------------------------------------------- */















.img img, .img {

	width: 100%;

	height: auto;

}

.responsive-img img, img.responsive-img {

}



@media screen and (max-width: 991px) {

.responsive-img img, img.responsive-img {

	width: 100% !important;

	max-width: 720px;

	height: auto;

}

}

/* column















----------------------------------------------------------- */















.column-1 {

	width: 100%;

	padding: 20px;

}

.column-2-left {

	width: 50%;

	float: left;

	padding: 20px;

}

.column-2-right {

	width: 50%;

	float: right;

	padding: 20px;

}

.column-2-left table, .column-2-right table {

	width: 50%;

}

.column-2-left h3, .column-2-right h3 {

	margin-top: 0;

}

.column-3-left {

	width: 33%;

	float: left;

	padding: 20px;

}

.column-3-center {

	width: 33%;

	float: left;

	padding: 20px;

}

.column-3-right {

	width: 33%;

	float: right;

	padding: 20px;

}

.column-2w-left {

	width: 67%;

	float: left;

	padding: 20px;

}

.column-2w-right {

	width: 67%;

	float: right;

	padding: 20px;

}



@media screen and (max-width: 1279px) {

.column-1, .column-2-left, .column-2-right, .column-2-left table, .column-2-right table, .column-3-left, .column-3-center, .column-3-right, .column-2w-left, .column-2w-right {

	width: 100%;

	float: none;

	margin: 0;

	padding: 20px 0;

}

}

/* ===========================================================































	aside































=========================================================== */















aside {

	position: absolute;

	top: 100px;

	left: 0;

	width: 246px;

	height: 100%;

	z-index: 1000;

}



@media screen and (max-width: 1279px) {

aside {

	display: none;

}

}

aside .aside-head {

	padding: 20px 24px;

	background-color: #5bb43b;

	font-size: 1.8rem;

	line-height: 1.2;

	text-align: left;

	color: #fff;

	display: table;

	width: 100%;

}

aside .aside-head span {

	display: table-cell;

	vertical-align: middle;

}

aside ul {

}

aside ul li {

	font-size: 1.5rem;

	margin: 0;

	border-bottom: solid 1px #ddd;

	background-color: #fff;

}

aside ul li a {

	position: relative;

	display: block;

	padding: 24px 28px 24px 28px;

	color: #111 !important;

}

aside ul li a:hover, aside ul li a.current {

	text-decoration: none;

	color: #5bb43b !important;

}

aside ul li a.current {

	font-weight: bold;

	background-color: #e4f2e3;

}

aside ul li a:after {

	position: absolute;

	top: 26px;

	right: 24px;

	font-size: 2.0rem;

	content: "\f105";

	font-family: FontAwesome;

	color: #999;

}

aside ul li a:hover:after {

	color: #5bb43b !important;

}

/* secondary */















aside ul li ul {

	margin: 0;

}

aside ul li ul li {

	margin: 0 0 0 20px;

	border-top: solid 1px #ddd;

	border-bottom: none;

	border-left: solid 1px #ddd;

}

aside ul li ul.tertiary li a {

	font-size: 14px;

	font-size: 1.4rem;

}

aside ul li ul.tertiary li a {

	padding: 8px 16px 8px 16px;

}

aside ul li ul li a:before, aside ul li ul li a:after {

	display: none;

}

/* ===========================================================































	bt-pagetop































=========================================================== */















body .bt-pagetop {

	clear: both;

	width: 48px;

	height: 48px;

	margin: 0;

	display: none;

	position: fixed;

	right: 5px;

	bottom: 5px;

	z-index: 100;

}

.bt-pagetop a {

	position: relative;

	display: block;

	width: 48px;

	height: 48px;

	background-color: rgba(0,0,0,0.75);

	/*　Scott Kellum Method */















	overflow: hidden;

	text-indent: 100%;

	white-space: nowrap;

}

.bt-pagetop a:before {

	content: " ";

	position: absolute;

	top: 50%;

	left: 50%;

	width: 2px;

	height: 12px;

	margin: -6px 0 0 -2px;

	background-color: #fff;

}

.bt-pagetop a:after {

	content: " ";

	position: absolute;

	top: 50%;

	left: 50%;

	width: 8px;

	height: 8px;

	margin: -5px 0 0 -5px;

	border-top: solid 2px #fff;

	border-left: solid 2px #fff;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

.bt-pagetop a:hover {

	background-color: #5bb43b;

}



@media screen and (max-width: 1279px) {

body .bt-pagetop {

	right: 15px;

	bottom: 25px;

}

}

/* ===========================================================































	footer































=========================================================== */















.footer {

	position: relative;

	clear: both;

	overflow: hidden;

	background-color: #efefef;

}

/* footer-navi


----------------------------------------------------------- */

.footer-navi {
	width: auto;
 	max-width: 1;
 	margin: 0 auto;
	padding: 30px 30px;
	text-align: left;
}

.footer-navi h1 {
	float: right;
}

@media screen and (max-width: 1279px) {

.footer-navi {
	display: none;
}
}

.footer-navi .fn > li {
	float: left;
	display: inline;
	width: 14.2%;
	font-size: 1.6rem;
}

.footer-navi #fot-navi-about {
	width: 240px;
}

.footer-navi #fot-navi-feature {
}

.footer-navi #fot-navi-portfolio {
}

.footer-navi #fot-navi-finance {
}

.footer-navi #fot-navi-ir {
}

.footer-navi h2 {

	padding: 0;

	margin: 0 20px 5px 0;

	border: none;

	background: none;

	overflow: inherit;

	font-size: 13px;

	font-size: 1.3rem;

}

.footer-navi h2 a {

	font-weight: bold;

}

.footer-navi h2 a:link, .footer-navi h1 a:visited {

	text-decoration: none;

}

.footer-navi h2 a:hover {

	text-decoration: none;

}

.footer-navi ul {

	font-size: 13px;

	font-size: 1.3rem;

	line-height: 1.6;

	margin: 0 20px 0 0;

	padding: 0;

}

.footer-navi ul li {

	margin: 0 0 2px;

	overflow: hidden;

}

.footer-navi ul li a {

	padding: 2px 0 16px 0;

	display: block;

	position: relative;

}

.footer-navi ul li li a {

	padding: 2px 0 2px 17px;

	display: block;

	position: relative;

}

.footer-navi ul > li li a:before {

	position: absolute;

	top: 3px;

	left: 0;

	font-size: 0.8rem;

	content: "▶︎";

	font-family: FontAwesome;

	color: #5bb43b;

}

.footer-navi a:link, .footer-navi a:visited {

	text-decoration: none;

}

.footer-navi a:hover {

	text-decoration: none;

	color: #5bb43b;

}

.footer-navi a.current {

}

/* footer-navi















----------------------------------------------------------- */















.footer-navi-support {

	margin: 0 auto;

	text-align: left;

	padding: 20px;

	color: #fff;

	background-color: #264d36;

}

.footer-navi-support ul {

	float: left;

	margin: 0;

}

.footer-navi-support ul li {

	display: inline-block;

	margin: 0;

	padding: 0;

}

.footer-navi-support li a {

	border-left: solid 1px #5d785f;

	font-size: 1.3rem;

	line-height: 20px;

	height: 20px;

	padding: 0 10px;

	color: #fff;

}

.footer-navi-support li:first-child a {

	padding: 0 10px 0 0;

	border-left: none;

}

.footer-navi-support li a:link, .footer-navi-support li a:visited {

	text-decoration: none;

	color: #fff;

}

.footer-navi-support li a:hover {

}

.footer-navi-support li a.current {

	font-weight: bold;

}



@media screen and (max-width: 1279px) {

.footer-navi-support {

	width: 100%;

	height: inherit;

	line-height: inherit;

	text-align: left;

	padding: 0;

	overflow: hidden;

}

.footer-navi-support ul {

	width: 100%;

}

.footer-navi-support ul li {

	display: block;

	padding: 0;

}

.footer-navi-support ul li a, .footer-navi-support li:first-child a {

	position: relative;

	display: block;

	margin: 0;

	padding: 10px 24px 10px 10px;

	border: none;

	border-bottom: solid 1px rgba(255,255,255,0.15);

	height: auto;

	line-height: 1.4;

	font-size: 13px;

	text-decoration: none;

}

.footer-navi-support ul li a:before {

	position: absolute;

	content: " ";

	vertical-align: middle;

	top: 50%;

	right: 10px;

	width: 5px;

	height: 5px;

	margin: -4px 0 0;

	border-top: 1px solid #fff;

	border-right: 1px solid #fff;

	-webkit-transform: rotate(45deg);

	transform: rotate(45deg);

}

}

/* footer-navi















----------------------------------------------------------- */















.copyright {

	float: right;

	margin: 0;

	line-height: 20px;

	height: 20px;

}

.copyright small {

	font-size: 13px;

	font-size: 1.3rem;

}



@media screen and (max-width: 1279px) {

.copyright {

	float: none;

	text-align: center;

	overflow: hidden;

	line-height: 1.6;

	height: auto;

	margin: 0;

	padding: 20px 20px 50px;

}

}





.nest0 ,.nest1{

    display: block;

    padding: 15px;

    border-bottom: solid 1px #ddd;

    background: #fff;

}



.nest1{

  margin-left: 2em;

}



.nest0 a,.nest1 a{

	text-decoration: none !important;

	color: #333 !important;

	position: relative;

	padding-left: 0.8em;

}



.nest0 a:hover,.nest1 a:hover{

	    color: #5bb43b !important;

}



.nest0 a:before,.nest1 a:before {

    position: absolute;

    top: 0;

    left: 0;

    font-size: 0.8rem;

    content: "▶︎";

    font-family: FontAwesome;

    color: #5bb43b;

}





/*オープニング*/



#loader-bg {

	display: block;

	position: fixed;

	width: 100%;

	height: 100%;

	top: 0px;

	left: 0px;

	background: #fff;

	z-index: 9998;

}



svg#opening-logo{

    display:block;

    margin: auto;

    width: 306px;

    height: auto;

			position: absolute;

			top: 0;

			left: 0;

			bottom: 0;

			right:0;

}

#opening-logo path{

    stroke-width:1px;

    stroke:#9ca4a3;

    stroke-dasharray: 400;

    stroke-dashoffset: 400;

    animation: drawline 4s ease-in-out forwards,FillIn 2s 3s linear both,eraseline 0.5s 3.5s linear forwards;

}

.portDisplay {
	display: none;
}

.characteristics {
	white-space: pre-wrap;
}

@media screen and (max-width: 767px) {
	.responsive-img-fix img {
		width: 70%!important;
	}
	
	#individual .padding-right-40 {
		padding-right: 0!important;
	}
}

.currentt {
	color: #fff;
	background: #5bb43b;
}