@charset "UTF-8";
html {
	position: relative!important;
	z-index: 0!important;
}
#container {
	position: relative;
	z-index: 0;
}
/*--------------------------
 WHITE BASE
----------------------------*/
.whitebase{
	position: relative;
	background-color: #FFFFFF;
}
/*--------------------------
 FIX
----------------------------*/
.gotop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	text-decoration: none;
	color: white;
	font-size: 12px;
	display: none;
	background-image: url(../images/pageup.svg);
	background-repeat: no-repeat;
	background-position: center center;
	height: 40px;
	width: 40px;
	z-index: 1000;
}
/*--------------------------
 SC BUTTON
----------------------------*/
.sc_button {
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.03em;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    border-radius: 20px;
}
.sc_button::after {
    content: "";
    display: block;
    clear: both;
}
.sc_button a {
    position: relative;
    display: block;
    text-decoration: none;
    border-radius: 10px;
    padding-top: 5px;
    padding-bottom: 4px;
}
.sc_button:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	-webkit-transition: all .3s;
    transition: all .3s;
}
/*--------------------------
 SC BUTTON 01
----------------------------*/
.sc_button_wrapper01 {
    padding-bottom: 40px;    
}
.sc_button01 {
    width: 180px;
    float: right;
    margin-right: 20px;
}
.sc_button01-center {
    width: 180px;
    margin-right: auto;
    margin-left: auto;
}
.scbblue a {
    color: #1E7AB8;
	background-position: right 15px center;
    background-size: 10px;
    background-repeat: no-repeat;
    background-image: url(../images/arrow_blue.svg);
}
/*--------------------------
 SC BUTTON 02
----------------------------*/
.sc_button_wrapper02 {
    padding-bottom: 40px;    
}
.sc_button02 {
    width: 180px;
    margin-right: auto;
    border: 1px solid #1E7AB8;
    margin-left: auto;
}
.scb02 a {
    color: #1E7AB8;
	background-position: right 15px center;
    background-size: 10px;
    background-repeat: no-repeat;
    background-image: url(../images/arrow_blue.svg);
}
/*--------------------------
 SC BUTTON 03
----------------------------*/
.sc_button_wrapper03 {
    padding-bottom: 40px;    
}
.sc_button03 {
    width: 180px;
    margin-right: auto;
    border: 1px solid #FFFFFF;
    margin-left: auto;
}
.scb03 a {
    color: #FFFFFF;
	background-position: right 15px center;
    background-size: 10px;
    background-repeat: no-repeat;
    background-image: url(../images/arrow_white.svg);
}

/*--------------------------
 BREAD for REGULAR
----------------------------*/
#bread {
	position: relative;
	z-index: 1;
	padding-top: 30px;
	padding-bottom: 30px;

}
#bread ol {
	padding-left: 30px;
}
.bread_li   {
	color: #808080;
	display: inline;
	vertical-align: baseline;
	font-size: 10px;
	line-height: 14px;
	font-weight: normal;
	padding-right: 2px;
	padding-top: 1px;
}
.bread_li a   {
	text-decoration: none;
	color: #808080;
	font-size: 10px;
	line-height: normal;
	padding-right: 20px;
	font-weight: normal;
	background-image: url(../images/bread_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 0px;
}
.bread_li a:hover {
	display: inline;
	text-decoration: underline;
	color: #808080;
}
.bread_arrow {
	padding-right: 10px;
	padding-left: 10px;
	color: #CCCCCC;
	font-weight: bold;
	line-height: normal;
	font-size: 10px;
	vertical-align: baseline;
}

/*--------------------------
 HEAD IMAGE
----------------------------*/
@media screen and (min-width:768px) and ( max-width:960px) {
.head_image {
    height: 250px;
}
}
@media screen and (min-width:960px) {
.head_image {
    height: 370px;
}
}
.head_image {
    background-position: center center;
    background-size: cover;
    position: relative;
}
.head_image_push {
    margin-top: 80px;
}
.head_image_company {
    background-image: url(../images/headimg_company.jpg);
}
.head_image_business {
    background-image: url(../images/headimg_business.jpg);
}
.head_image_products {
    background-image: url(../images/headimg_products.jpg);
}
.head_image_csr {
    background-image: url(../images/headimg_csr.jpg);
}
.head_image_financial {
    background-image: url(../images/headimg_financial.jpg);
}
.head_image_contact {
    background-image: url(../images/headimg_contact.jpg);
}
.head_image_news {
    background-image: url(../images/headimg_news.jpg);
}
.head_image_error {
    background-image: url(../images/headimg_error.jpg);
}
.head_image_privacy {
    background-image: url(../images/headimg_privacy.jpg);
}
/*--------------------------
 HEAD IMAGE TITLE
----------------------------*/
.head_image_center_chars {
    position: absolute;  /*要素を浮かす*/
	/*relativeを指定した親要素を支点とした位置をすべて0に指定↓*/
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto; /*上下左右中央に*/
	width: 440px; /*widthの指定は必須*/
	height: 100px; /*heightの指定は必須*/
	text-align: center;
    color: #FFFFFF;
}
.head_image_eng {
    font-size: 76px;
    line-height: 82px;
    letter-spacing: 0.05em;
}
.head_image_title {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 0.1em;
    display: inline;
    padding-top: 0px;
    font-weight: normal;
	font-feature-settings: "palt";
}
/*--------------------------
 HEAD IMAGE TITLE LONG TYPE
----------------------------*/
.head_image_center_chars_long {
    position: absolute;  /*要素を浮かす*/
	/*relativeを指定した親要素を支点とした位置をすべて0に指定↓*/
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto; /*上下左右中央に*/
	width: 700px; /*widthの指定は必須*/
	height: 100px; /*heightの指定は必須*/
	text-align: center;
    color: #FFFFFF;
}
.head_image_eng_long {
    font-size: 76px;
    line-height: 82px;
    letter-spacing: 0.05em;
}
.head_image_title_long {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 0.1em;
    display: inline;
    padding-top: 0px;
    font-weight: normal;
	font-feature-settings: "palt";
}
/*--------------------------
 NAV LANGUAGE
----------------------------*/
.nav_language {
    position: fixed;
    top: 100px;
    right: 20px;
    z-index: 10;
    text-align: center;
    background-image: url(../images/transparent-bk30.svg);
    background-repeat: repeat;
    background-position: center center;
    border-radius: 5px;
}
@media screen and (min-width:768px) and ( max-width:830px) {
.nav_language a {
    padding-bottom: 25px!important;
}
}
@media screen and (min-width:830px) {
.nav_language a {
    padding-bottom: 15px!important;
}
}
.nav_language a {
    text-decoration: none;
    -webkit-transition: all .3s;
    transition: all .3s;
    color: #FFFFFF;
    display: block;
    padding-top: 15px!important;
    width: 150px;
}
.nav_language a:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
	color: #000000;
}
.nav_language_eng {
    font-size: 16px;
	line-height: 22px;
	letter-spacing: 0.05em;
	font-feature-settings: "palt"; 
}
/*--------------------------
 REGULAR
----------------------------*/
@media screen and (min-width:768px) and ( max-width:960px) {
.regular_wrapper {
    margin-left: 30px;
    margin-right: 30px;
	position: relative;
}
}
@media screen and (min-width:960px) {
.regular_wrapper {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
}
.regular_wrapper::after {
    content: "";
    display: block;
    clear: both;
}
@media screen and (min-width:768px) and ( max-width:960px) {
.section_title {
    font-size: 30px;
    line-height: 40px;
}
}
@media screen and (min-width:960px) {
.section_title {
    font-size: 36px;
    line-height: 46px;
}
}
.section_title {
	letter-spacing: 0.05em;
	font-feature-settings: "palt"; 
}
.section_title_center {
    text-align: center;	 
}
.section_title_upper {
    padding-top: 60px;     
}
.section_title_upper02 {
    padding-top: 120px;     
}
/*--------------------------
 REGULAR ENGLISH
----------------------------*/
@media screen and (min-width:768px) and ( max-width:960px) {
.section_title_eng {
    font-size: 60px;
    line-height: 40px;
}
}
@media screen and (min-width:960px) {
.section_title_eng {
    font-size: 30px;
    line-height: 40px;
}
}
.section_title_eng {
	letter-spacing: 0.01em;
	font-feature-settings: "palt"; 
}
.section_title_eng br {
    display: none;    
}