@charset "utf-8";

@media (min-width:768px) {
  .spOnly{display: none !important;}
}
@media (max-width:767px) {
  .pcOnly{display: none !important;}
}

.mt0{ margin-top: 0 !important;}
.mt5{ margin-top: 5px !important;}
.mt10{ margin-top: 10px !important;}
.mt15{ margin-top: 15px !important;}
.mt20{ margin-top: 20px !important;}
.mt25{ margin-top: 25px !important;}
.mt30{ margin-top: 30px !important;}
.mt35{ margin-top: 35px !important;}
.mt50{ margin-top: 50px !important;}

.mb0{ margin-bottom: 0 !important;}
.mb5{ margin-bottom: 5px !important;}
.mb10{ margin-bottom: 10px !important;}
.mb15{ margin-bottom: 15px !important;}
.mb20{ margin-bottom: 20px !important;}
.mb25{ margin-bottom: 25px !important;}
.mb30{ margin-bottom: 30px !important;}
.mb35{ margin-bottom: 35px !important;}
.mb40{ margin-bottom: 40px !important;}
.mb45{ margin-bottom: 45px !important;}
.mb50{ margin-bottom: 50px !important;}
.mb55{ margin-bottom: 55px !important;}
.mb60{ margin-bottom: 60px !important;}

.mr0{ margin-right: 0 !important;}
.mr5{ margin-right: 5px !important;}
.mr10{ margin-right: 10px !important;}

.ml0{ margin-left: 0 !important;}
.ml5{ margin-left: 5px !important;}
.ml10{ margin-left: 10px !important;}

pd0 {	padding:0 !important; }

.inlineblock { display:inline-block; }

.ta_c{ text-align: center !important;}
.ta_r{ text-align: right !important;}
.ta_l{ text-align: left !important;}

.wid80{ width: 80% !important;}
.wid90{ width: 90% !important;}
.x_wid100{ max-width: 100% !important;}

a.blue-link:hover {	text-decoration: underline;}

.note {
	font-size: 0.8em;
	line-height: 1.5em;
	margin-top: 10px;
}
.note:before {
	content: '＊';
	float: left;
}
ul.note li {
	margin-left: 1.5em;
}

.ir_page section:after {
    content:" ";
    display:block;
    clear:both;
}

/* ---------------------------------
   
   コンテンツ メインエリア
   
   --------------------------------- */
section.main_area {
	width: 800px;
	display: inline-block;
	margin-right: 30px;
	vertical-align: top;
}

section.sp_lc_list {
	display: none;
}


/* ---------------------------------
   
   サイドメニュー エリア
   
   --------------------------------- */
section.side_area {
	width: 300px;
	display: inline-block;
	vertical-align: top;
}

ul.ir_localnavi {
	border: 1px solid #dedede;
}
ul.ir_localnavi li {
	display: inline-block;
	width: 100%;
	border-bottom: 1px dotted #dedede;
}
ul.ir_localnavi li:first-child {
	border-bottom: 0;
}
ul.ir_localnavi li:last-child {
	border-bottom: 0;
}
ul.ir_localnavi > li:first-child a {
	background: #f2f2f2;
	font-size: 18px;
	padding: 15px 0 15px 20px;
}
ul.ir_localnavi > li:first-child a:hover {
	background: #f7f7f7;
}
ul.ir_localnavi li a {
    width: 100%;
	display: block;
    font-size: 16px;
	font-weight: bold;
	padding: 10px 0px 10px 20px;
}
ul.ir_localnavi li a:hover {
	background: #f2f2f2;
	color: #000;
}
ul.ir_subnavi li {
	display: inline-block;
	width: 100%;
	border-bottom: 0;
	
}
ul.ir_subnavi li a {
	width: 100%;
	display: block;
	font-size: 15px;
	font-weight: normal;
	padding: 3px 0px 3px 40px;
}


@media screen and (max-width: 750px){
.naviUnder_img img{
	margin: 0 auto;
	display:block;
}
}


/* ---------------------------------
   
   IR情報
   
   --------------------------------- */
.irtop_news h2 {
	margin-top: 20px;
}
.irtop_news h2:after {
	content: '';
	clear: both;
}
.irtop_news h2 span {
	display: inline-block;
	font-size: 14px;
	float: right;
}
.irtop_news h2 span a {
	color: #2385e1;
}
.irtop_news h2 span a:hover {
	text-decoration: underline;
}
.link_boxs .two-column-menu:nth-of-type(odd) {
    margin-right: 1.5%;
	min-height: 340px;
	margin-bottom: 30px;
}
.link_boxs .two-column-menu:nth-of-type(even) {
    margin-left: 1.5%;
	min-height: 340px;
	margin-bottom: 30px
}
.link_boxs .two-column-menu-img-hover {
	width: 100%;
	height: 100%;
}
.link_boxs .two-column-menu-img-hover {
	left: 10px;
}
.link_boxs .two-column-menu-img-hover span {
	position: relative;
    line-height: inherit;
    top: 170px; 
}
.top_faq_btm a,
.top_contact_btm a,
.top_sitemap_btm a {
	width: 100%;
    margin: 16px auto;
	padding: 4px 30px;
    line-height: 50px;
	text-align: center;
    border-radius: 7px;
    display: inline-block;


	background: #000;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
	background-position: 0px -36px;
	border: 3px solid #000;
}
.top_faq_btm a:hover,
.top_contact_btm a:hover,
.top_sitemap_btm a:hover {
	background: #fff;
	color: #000;
	border: 3px solid #000;
}
.top_faq_btm a i.faq {
	display: inline-block;
    background: url(../image/icon_faq.png) no-repeat;
    vertical-align: middle;
    height: 31px;
    width: 29px;
    margin: 0em 0.6em 0 0;
    text-align: center;
}
.top_sitemap_btm a {
  color: #fff !important;
}
.top_sitemap_btm a:hover {
  color: #000 !important;
}
.top_sitemap_btm a i.top_sitemap_icon {
	display: inline-block;
    background: url(../image/icon_sitemap.png) no-repeat;
    vertical-align: middle;
    height: 31px;
    width: 29px;
    margin: 0em 0.6em 0 0;
    text-align: center;
}
.top_faq_btm a:hover .cnt-w {
	background-position: 0px -31px;
}
.top_contact_btm a:hover .cnt-w {
    background-position: 0px -36px;
}
.top_sitemap_btm a:hover .cnt-w {
    background-position: 0px -31px;
}
.other_link_boxs .two-column-menu:nth-of-type(odd),
.other_link_boxs .two-column-menu:nth-of-type(even) {
	min-height: inherit;
}
.moviebox {
	height: 400px;
}
@media screen and (max-width: 750px){
.moviebox{
	height: 300px;
}
}



/* ---------------------------------
   
   事業内容
   
   --------------------------------- */
.bsn_table table th,
.bsn_table table td {
	border-spacing: 2px;
	
}
.bsn_table table th {
	width: 10%;
	font-size: 1.3em;
	vertical-align: middle;
	color: #fff;
	background-color: #e14623;
	border-bottom: 1px solid #fff;
}
.bsn_table table td {
	padding: 5px 10px;
	border-left: 1px solid #e14623;
	border-top: 1px solid #e14623;
}
.bsn_table table td span {
	font-weight: bold;
	color: #e14623;
}
.bsn_table table tr td:last-child {
	border-right: 1px solid #e14623;
}
.bsn_table table tr:last-child th,
.bsn_table table tr:last-child td {
	border-bottom: 1px solid #e14623;
}

.bsn_intro {
  --fz_tagline: 18;
  --font_size_tagline: calc(var(--fz_tagline)*var(--unit));
  --line_feed_tagline: 33;
  --line_height_tagline: calc(var(--line_feed_tagline)/var(--fz_tagline));
  --letter_spacing_tagline: 0.12em
}
@media (min-width:768px) {
  .bsn_intro {
    --fz_tagline: 22;
    --line_feed_tagline: 40
  }
}
.bsn_intro__tagline {
  letter-spacing: var(--letter_spacing_tagline);
  font-size: var(--font_size_tagline);
  font-weight: 700;
  line-height: var(--line_height_tagline)
}
.bsn_kv {
  position: relative;
  z-index: 1;
  padding: 1rem 1rem 4.2rem
}
@media (min-width:768px) {
  .bsn_kv {
    padding: 5rem 5rem 6.6rem
  }
}
.bsn_kv__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1
}
.bsn_kv__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.bsn_kv__figure {
  text-align: center
}
.bsn_kv__info {
  margin: 3.2rem 1.6rem 0;
  padding-top: 3.2rem;
  border-top: .2rem solid #fff
}
@media (min-width:768px) {
  .bsn_kv__info {
    margin-top: 4rem 0 0;
    padding-top: 4rem
  }
}
.bsn_kv__dl dt {
  display: flex;
  align-items: center
}
@media (max-width:767.98px) {
  .bsn_kv__dl dt {
    flex-direction: column;
    justify-content: center;
    row-gap: .2rem
  }
}

@media (min-width:768px) {
  .bsn_kv__dl dt {
    -webkit-column-gap: 1.6rem;
    -moz-column-gap: 1.6rem;
    column-gap: 1.6rem
  }
}
.bsn_kv__dl dd {
  margin-top: .4rem;
  letter-spacing: .1em;
  color: #000;
  font-size: calc(var(--fz)*0.1rem);
  line-height: calc(var(--feed)/var(--fz));
  --fz: 12;
  --feed: 20
}
@media (min-width:768px) {
  .bsn_kv__dl dd {
    margin-top: .6rem;
    --fz: 16;
    --feed: 24
  }
}
.bsn_kv__dl dd small {
  display: block;
  margin-top: 1rem;
  --fz: 12
}
@media (min-width:768px) {
  .bsn_kv__dl dd small {
    margin-top: .8rem;
    font-size: calc(var(--fz)*0.1rem);
    --fz: 14
  }
}
.bsn_kv__dl dd+dt {
  margin-top: 3rem
}
@media (min-width:768px) {
  .bsn_kv__dl dd+dt {
    margin-top: 2.6rem
  }
}
.bsn_kv__point {
  color: #fff;
  display: flex;
  align-items: center;
  padding: .5rem 1rem .4rem 1.2rem;
  background-color: #e24822;
  letter-spacing: .04em;
  font-size: calc(var(--fz)*0.1rem);
  font-weight: 700;
  line-height: 1;
  --fz: 11
}
@media (min-width:768px) {
  .bsn_kv__point {
    padding: 1rem 2rem .9rem 2.4rem;
    --fz: 14
  }
}
.bsn_kv__point span {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: .6rem;
  border-radius: 9999px;
  width: calc(var(--size)*0.1rem);
  height: calc(var(--size)*0.1rem);
  background-color: #fff;
  color: #e24822;
  font-family: Montserrat, sans-serif;
  font-weight: 600;
  font-style: normal;
  line-height: 1;
  --size: 15
}
@media (max-width:767.98px) {
  .bsn_kv__point span {
    padding-left: .05rem
  }
}
@media (min-width:768px) {
  .bsn_kv__point span {
    margin-left: 1.2rem;
    --size: 19
  }
}
.bsn_kv__ttl {
  color: #e24822;
  font-size: calc(var(--fz)*0.1rem);
  font-weight: 700;
  --fz: 20
}
@media (min-width:768px) {
  .bsn_kv__ttl {
    --fz: 32
  }
}
.bsn_h2 {
  border-left: none;
  padding-left: 0;
}
.bsn_h2::after{
  content: "";
  background-color: #e24822;
  width: 2.4rem;
  display: block;
  height: 0.4rem;
  margin-left: 0.2rem;
  margin-top: 1.8rem;
}
.bsn_h2 span{
  display: block;
  letter-spacing: 0.06em;
  color:#000;
  font-size: 33px;
  line-height: 1.1;
}
@media (min-width:768px) {
  .bsn_h2 {
     font-size: 42px;
  }
}
.bsn_figure__inner {
    padding: 1.6rem;
  background: url(/ir/image/service_figure_cgs_bg.png) no-repeat 0;
  background-size: cover;
}
@media (min-width:768px) {
  .bsn_figure__inner {
    padding: 3rem;
  }
}

/* ---------------------------------
   
   コーポレート・ガバナンス
   
   --------------------------------- */
.governance_img {
	text-align: center;
}
.governance_img img{
	width: 100%;
}

.outsideDirector{
	counter-reset: number 0;
	margin-top:50px;
}
.content .entry-content .outsideDirector ol li{
	list-style:none;
}
.outsideDirector_headTxt{
	margin-top:50px;
}
.alphaList{
	margin-left:1em;
}
.alphaList > li:nth-child(n+2){
	margin-top:10px;
}
.alphaList_head{
	display:flex;
}
.alphaList_mark{
	margin-right: 1em;
}
.alphaList_bsk{
	margin-left: 1.5em;
    margin-top: 5px;
}
.alphaList_bsk > li{
	display:flex;
}
.alphaList_bsk > li:nth-child(n+2){
	margin-top:5px;
}

.noteList_num_colon{
	font-size: 0.8em;
}
.noteList_num_colon::before{
	content:'（注）';
	display:block;
}
.noteList_num_colon > li{
	text-indent: -2em;
    padding-left: 3em;
}
.noteList_num_colon > li::before{
	counter-increment: number 1; 
	content: counter(number) "：";
}

@media screen and (max-width: 750px){
.outsideDirector{
	margin-top:0;
}

.outsideDirector_headTxt{
	margin-top:20px;
}
}

/* ---------------------------------
   
   株式情報
   
   --------------------------------- */
.stock_table table {
	width: 100%;
}
.stock_table table tr {
	border-bottom: 1px dotted #dedede;
}
.stock_table table th,
.stock_table table td {
	padding: 17px 0;
}
.stock_table table th {
	width: 230px;
    text-align: left;
    vertical-align: middle;
}

/* ---------------------------------
   
   よくあるご質問
   
   --------------------------------- */
.faq_list dt {
	color: #e14623;
    font-weight: bold;
    margin-bottom: 0;
	font-size: 20px;
    border-left: 1px solid #000;
    padding-left: 1em;
    margin: 30px 0;
	line-height: 1.5em;
}
.faq_list dd {
	margin: 18px 0 30px;
}

/* ---------------------------------
   
   IRお問い合わせ
   
   --------------------------------- */
.mail_link {
	padding: 30px 10px;
	margin: 20px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

@media screen and (max-width:750px) {
/* ---------------------------------
	 
	 メインエリア・サイドエリア
	 
	 --------------------------------- */
section.main_area,
section.side_area {
	width: 100%;
}
section.main_area {
	margin-bottom: 30px;
}
section.sp_lc_list {
	display: block;
}
section.sp_lc_list ul {
	text-align: center;
	margin-left: 10px;
	margin-right: 10px;
	overflow: hidden;
}
section.sp_lc_list li:nth-child(odd){
	float: left;
}
section.sp_lc_list li:nth-child(even){
	float: right;
	/* margin-right: 8px; */
}
section.sp_lc_list li {
	display: inline-block;
	/* margin-right: 1em; */
	border: 1px solid #dedede;
	width: 45%;
	margin-bottom: 10px;
}
section.sp_lc_list li:last-child {
	margin-right: 0;
}
section.sp_lc_list li a{
	padding: 7px 15px;
	font-size: 1.1em;
	display: block;
}

/* ---------------------------------
	 
	 ローカルナビ
	 
	 --------------------------------- */
ul.ir_localnavi li {
	width: 100%;
	text-align: center;
	margin: 0 auto 1px;
}
ul.ir_localnavi > li:first-child a,
ul.ir_localnavi li a {
	padding: 10px 10px 10px 10px;
}
ul.ir_localnavi li:last-child {
	border-bottom: 0;
}
ul.ir_localnavi li ul.ir_subnavi {
	display: none;
}



/* ---------------------------------
	 
	 IR情報
	 
	 --------------------------------- */
.link_boxs .two-column-menu:nth-of-type(odd),
.link_boxs .two-column-menu:nth-of-type(even) {
    margin-left: 0;
	margin-right: 0;
    min-height: inherit;
}
.top_faq_btm a i.faq{
	margin: -0.2em 0.3em 0 0;
}
.top_contact_btm i.cnt {
	margin: -0.2em 0.4em 0 0;
}
.top_contact_btm a:hover .cnt-w {
    background-position: 0px -23px;
}
.other_link_boxs .two-column-menu {
	margin: 0;
}


/* ---------------------------------
	 
	 コーポレート・ガバナンス
	 
	 --------------------------------- */
.governance_img img{
	width: 100%;
}


/* ---------------------------------
   
   よくあるご質問
   
   --------------------------------- */
.faq_list dt {
	color: #e14623;
    font-weight: bold;
    margin-bottom: 0;
	font-size: 15px;
    border-left: 1px solid #000;
    padding-left: 1em;
    margin: 20px 0;
	line-height: 1.5em;
    word-wrap: break-word;
}
.faq_list dd {
	margin: 18px 0 20px;
}


}

@media screen and (max-width:472px) {


/* ---------------------------------
   
   株式情報
   
   --------------------------------- */
.stock_table table th,
.stock_table table td {
	width: 100%;
	display: block;
}
.stock_table table th{
	padding-bottom:0;
}

}

@media print {
	section.side_area {
		display: none;
	}


}

/* ---------------------------------
   
   電子広告
   
   --------------------------------- */
.irLibrary * {
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}
.irLibrary img {
    vertical-align: middle;
}
.irLibrary .irGroup {
    margin-bottom: 30px;
}
.irLibrary dl {
    display: table;
    margin: 0;
    width: 100%;
    border-bottom: 1px dotted #dedede;
}
.irLibrary dt {
    padding-right: 0.5em;
    width: 1px;
    white-space: nowrap;
}
.irLibrary dt span {
    font-size: 80%;
}
.irLibrary .irDate {
    margin-right: 1.5em;
}
.irLibrary dt, .irLibrary dd {
    display: table-cell;
    vertical-align: top;
    padding: 1em 0;
    margin: 0;
}
.irLibrary dd {
    padding-top: 1.2em;
}
.irLibrary dd img {
    margin: 0 0.5em;
}
.irLibrary dd a {
    font-weight: bold;
}
.pdfIcon {
    width: 23px;
    height: auto;
}

#download {
    padding: 20px 20px;
    font-size: 80%;
    line-height: 1.6;
    background: #f2f2f2;
}
#download img {
    max-width: 100%;
    float: left;
    margin: 5px 10px 10px 0;
}

@media screen and (max-width: 750px) {
.irLibrary dt {
	padding-bottom: 0;
	display: block;
    padding: 0.5em;
}
.irLibrary dd {
	display: block;
    padding: 0.5em;
}
#download {
	font-size: 1em;
}
#download img {
    display: block;
    float: none;
}
}

/* ---------------------------------
   
   IRサイトマップ
   
   --------------------------------- */
.irSitemap__list {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  justify-content: space-between;
  width: 100%;
}
.irSitemap__list_item {
  display: grid;
  row-gap: 2.6rem;
  width: calc((100% - 50px) / 2);
}
.irSitemap__list_item_head_cateBtn {
  /* --fz: 15; */
  /* --font_size: calc(var(--fz)* var(--unit)); */
  --line_feed: 22;
  --line_height: calc(var(--line_feed) / var(--fz));
  --txt_color: #fff;
  --letter_spacing: 0.16em;
  --line_width: 12;
  --icon_size: 12;
  --icon_color: #fff;
}
.irSitemap__list_item_head_cateBtn a {
  display: grid;
  transition: color 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  text-decoration: none;
  /* color: var(--txt_color); */
}
.irSitemap__list_item_head_cateBtn_info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
}
.irSitemap__list_item_head_cateBtn_info_txt {
  letter-spacing: var(--letter_spacing);
  font-size: 16px;
  font-weight: 700;
  line-height: var(--line_height);
}
.irSitemap__list_item_head_cateBtn_info_arw {
  width: calc(var(--icon_size)* var(--unit));
  height: calc(var(--icon_size)* var(--unit));
  transition: fill 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  /* fill: var(--icon_color); */
}
.irSitemap__list_item_head_cateBtn a:hover {
  fill: #e24822;
}
.irSitemap__list_item_head_cateBtn_line {
  position: relative;
  height: 0.3rem;
  background-color: #dedede;
}
.irSitemap__list_item_head_cateBtn_line::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(var(--line_width)* var(--unit));
  height: 100%;
  background-color: #e24822;
}
.irSitemap__list_item_body_list {
  display: grid;
  --fz: 14;
  --font_size: calc(var(--fz)* var(--unit));
  --line_feed: 22;
  --line_height: calc(var(--line_feed) / var(--fz));
  --letter_spacing: 0.06em;
  row-gap: 1.5rem;
}
.irSitemap__list_item_body_list li {
  position: relative;
  padding-left: 2rem;
  letter-spacing: var(--letter_spacing);
  font-size: 15px;
  line-height: var(--line_height);
}
.irSitemap__list_item_body_list li a {
  transition: color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  text-decoration: none;
  /* color: #fff; */
}
.irSitemap__list_item_body_list li a::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(1em* var(--line_height)* 1 / 2);
  left: 0;
  width: 1rem;
  height: 0.3rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #dedede;
}
@media (min-width: 768px) {
  .irSitemap__list_item_head_cateBtn {
    font-size: 16px;
  }
  .irSitemap__list_item_head_cateBtn a {
    row-gap: 10px;
  }
}
@media (max-width: 767.98px) {
  .irSitemap__list {
    flex-direction: column;
    gap: 10.6666666667vw;
  }
  .irSitemap__list_item {
    width: 100%;
  }
  .irSitemap__list_item_head_cateBtn a {
    row-gap: 1.5rem;
  }
}


/* ---------------------------------
   
   配当・株主還元
   
   --------------------------------- */
.dividend_img {
  text-align: center;
}
@media (min-width: 768px) {
  .dividend_img img {
    max-width: 500px;
  }
}