@charset "utf-8";
/* CSS Document */

/*絞り込み制御*/
.is-hide {
display: none!important;
}

/*文字サイズ調整CSS*/
.size-button-wrap {
 align-items: center;
}
.size-button-wrap .size-button:first-child {
 margin-left: 1rem;
}
.size-button {
  background-color: #fff;
  border: 1px solid #323E94;
  cursor: pointer;
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  padding: 9px;
	margin-left: 9px;
  text-align: center;
  width: 36px;
}	
.size-button:hover,.size-button.active {
    background-color: #323E94;
    color: #fff;
}

/*ヘッダー部分cssの調整*/
@media screen and (min-width: 1025px), print{

	.site-header-02 .nav-global-02> .content> .inner> .of-global> li:not(:first-child)> a::before {
		background: #000;
		height: 24px;
	}
	
	.site-header-02 .nav-global-02> .content> .inner> .of-global> li:first-child> a::before {
		background: #000;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 1px;
		height: 24px;
		margin: auto 0;
		content: "";
	}

/*
	.site-header-02> .inner {
		box-shadow: 0 0 0 0 rgb(0 0 0 / 0%);
	}
*/
}


.site-header-02> .inner> .content> .logo .siteName a {
    display: flex;
}
/*
.site-header-02> .inner {
    background: rgba(255, 255, 255);
}
*/

/*SPで文字サイズボタン非表示*/
@media screen and (max-width: 1024px), print{
	.site-header-02 .nav-global-02> .content> .inner> .of-utility> .size-button-wrap {
		display: none;
	}
}

/*見出しのCSS調整*/
.mod-hdg-l4-02 {
	border-left: 9px solid #323E94;
	font-weight: bold;
}

.site-header-02> .inner> .content> .logo .siteName {
    font-size: 1.5rem;
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
	white-space: nowrap;
    margin: 0 0 0 3px;
}

@media screen and (min-width: 1025px), print{
	.site-header-02> .inner> .content> .logo img{
		width: auto;
		height: 27px;
	}
}


/*パンくずリストのcss調整*/
.hamburger-background {
	background-color: rgba(0,43,98,0.15);
}

.nav-location> .list> li::after {
    right: -19px;
    border-color: transparent transparent transparent #D9DFE7;
}

.nav-location> .list a {
    border-bottom: none;
	color: #006fff;
}

/*ヘッダーお問い合わせとenglishのアイコンを表示するためにパスを変更
.site-header-02 .nav-global-02> .content> .inner> .of-utility .of-contact a::before {
	background-image: url("../img/sprite.png")
}

.site-header-02 .nav-global-02> .content> .inner> .of-utility .of-global a::before {
    background-image:url("../img/sprite.png");
}*/

/*NEWアイコンのCSS調整*/
b.mod-newlabel {
    color: #fff;
    background:#be375a;
}

/*要素幅を指定する*/

@media screen and (min-width: 1025px), print{
	.str-mainvisual> .str-inner> .content, .mod-form-trendSearch .str-mainvisual> .inner> .content {
    max-width: 1400px;
	}
}

.str-outer-wide> .str-inner, .mod-form-trendSearch .str-outer-wide> .inner {
    max-width: 1320px;
}

.str-outer> .str-inner, .mod-form-trendSearch .str-outer> .inner {
    max-width: 1200px;
}


/*footer縦棒*/
footer .mod-list-category> .list> li:not(:first-child)> a::before {
	background: #000;
	position: absolute;
	left: 15%;
	display: block;
	width: 1px;
	height: 20px;
	margin: auto 0;
	content: "";
}

/*　企業情報　*/

/*メインビジュアルとピックアップ間のマージンを消す*/
@media screen and (min-width: 1025px), print{
	.str-mainvisual {
		margin: 0;
	}
}

.str-mainvisual {
	margin: 0;
}

/* ニュース　(mod-list-news of-type-02)*/
/*リンクに付きアイコンを消すため、タグinsで新クラスno-linkiconを作成しました*/
.mod-list-news> dl.list> .row dd .content .no-linkicon a::after{
	display: none
}

.mod-list-news ins a[href$=".pdf"],
/*.mod-list-news ins a[target="_blank"],*/
.mod-list-news ins a[href$=".ppt"],
.mod-list-news ins a[href$=".xls"],
.mod-list-news ins a[href$=".doc"],
.mod-list-news ins a[href$=".zip"],
.mod-list-news ins a[href$=".lzh"],
.mod-list-news ins a[href$=".exe"],
.mod-list-news ins a.of-movie,
.mod-list-news ins a.js-modal-img {
  position: relative;
  padding-left: 2px;
}

/* ニュース下リンクリスト　mod-link */
/*ニュース下リンクリストのcssを追加するため、タグliでno-linkiconとbefore-linkiconを追加しました*/
.mod-link.of-list> .list> .no-linkicon> a::after {
	display: none;
}

.mod-link.of-list> .list> .before-linkicon> a::before {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 6px;
    content: "";
    -webkit-transform: rotate(
45deg);
    transform: rotate(
45deg);
    border: 1px solid;
    border-width: 1px 1px 0 0;
}

/*ニュースリストボーダー変更*/
@media screen and (min-width: 640px), print{
	.mod-list-news.of-type-02> dl.list> .row {
		border-bottom: #8E8D8D 1px solid;
	}
}

.mod-list-news.of-type-02> dl.list> .row {
	border-bottom: #8E8D8D 1px solid;
}

.mod-list-news> dl.list> .row.blue> dd .content a {
	color:blue;
}

/*アイコンと文字の間少し隙間を挟みます*/
a img {
	margin: auto 8px;
}

/*会社情報にのCSS調整*/
/*
.tgl-hook-wrap-uni> a.title::after {
    width: 15px;
    height: 15px;
    margin: 0 15px;
    border: 2px solid;
    border-width: 2px 2px 0 0;
}*/
.tgl-hook-wrap-uni> a.title::after {
	display: none;
}

.tgl-hook-wrap-uni> .title {
	margin-top: 30px;
    color: #000;
}

.mod-lyt-02 .mod-tgl-02 {
    margin: 0 0 50px;
}

.tgl-hook-wrap-uni {
    margin:0 ;
    border-bottom:none;
}

.tgl-hook-wrap-uni> a.title {
	font-size: 1.5em;
}

.tgl-hook-wrap-uni> a.title:hover {
	text-decoration: underline;
}

/*サステナビリティ*/

/*特集タイトル*/
.mod-hdg-l2.var02{
	color:#323E94;
}

/*見出しＬ2とmod-linkのCSSを編集して、新規１を作成します*/
.mod-hdg-l2 .mod-link:not(.of-list)::after {
    width: 20px;
    height: 20px;
    border: 2px solid;
    border-width: 2px 2px 0 0;
}

.mod-hdg-l2 .mod-link {
	color:#323E94;
}


/*新規２はmod-lytにクラスmod-boxを修正します。*/
.mod-lyt> .inner{
	align-items: center;
	justify-content: center;
}

.mod-lyt .mod-box {
    border: 2px solid #323E94;
	color:#323E94;
	height: 10rem;
	margin: auto;
	display: flex;
    justify-content: center;
    align-items: center; 
}

.mod-lyt .mod-box .mod-hdg-l4 {
	width: 90%;
	margin: auto;
}

.mod-lyt p {
	margin: 0
}

.mod-lyt a.lyt-box {
	color: #323E94;
	text-decoration:none;
}

.mod-lyt a.lyt-box:hover{
	text-decoration: underline;
}

.mod-lyt .mod-box.mod-link:not(.of-list)::after {
    color: #323E94;
    position: absolute;
	height: 15px;
	width: 15px;
    right: 5px;
}

@media screen and (min-width: 640px), print{
	.mod-lyt .mod-box.mod-link:not(.of-list)::after {
		right: 20px;
	}
}

/*サステナビリティ大ボタンを調整するためにクラスlimitを作成*/
div.limit .btn {
	margin: 20px 0;
	width: 32%;
	-webkit-align-items:normal;
    align-items:normal;
}

div.limit.var07 .btn {
	width: 100%;
}

	div.limit .btn:nth-child(3n+2){
		margin:20px;
	}

@media screen and (max-width: 1040px), print{
	div.limit .btn {
		margin: 20px auto;
	}
	
	div.limit .btn:nth-child(3n+2){
		margin:20px auto;
	}
	
	div.limit .btn {
		width: 45%;
	}
}

@media screen and (max-width: 639px), print{
	
	div.limit .btn {
		width: 70%;
	}
}

div.mod-btn.limit {
    flex-wrap: wrap;
	-webkit-justify-content: unset;
    justify-content:none;
}

.mod-btn img.icn {
	right: inherit;
	margin-left: 8px;
}

/*サステナビリティ小ボタンを調整するため、クラスvar03を作成*/
.mod-btn.var03 a{
	color: #323E94;
}

.mod-btn.var03 a::before{
	border-color: #323E94 #323E94 transparent transparent;
}

/*ビジュアル画像上見出し*/
.mlc-module-sample .str-mainvisual-04 .mod-hdg-l2{
	margin: 0;
	color:#FFFFFF;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}


/*ライブラリーを編集するため、クラスvar02を作成しました。*/
/*div class="var02-title"とdiv class="var02-text"を追加する*/
.mod-box-03.boxvar02 .var02-title {
	background-color: #323E94;
	height: 6rem;
	display: flex;
	align-items: flex-end;
    flex-wrap: wrap;
}

.mod-box-03.boxvar02 .var02-title p {
	max-width: 85%;
	margin: auto 0 auto 1em;
	font-size: 1.1em;
}

.mod-box-03.boxvar02> .inner> .col> .box {
	width: 100%;
	padding: 0px;
	background-color: #FFFFFF;
}

.mod-box-03.boxvar02 .var02-text {
	background-color: #FFFFFF;
	color:#000000;
}

.mod-box-03.boxvar02 .var02-text p {
	margin: 0;
	padding: 12px;
	height: 100%;
}

.var02-title .title .mod-link:not(.of-list)::after {
	display: none;
}

.var02-title.mod-link:not(.of-list)::after {
    position: absolute;
    width: 15px;
    height: 15px;
    margin: 0 6px;
    top: 40%;
    right: 6px;
    border: 2px solid;
    border-width: 2px 2px 0 0;
    color: #fff;
}

/*トピックスのCSS調整*/
.ssttopic .mod-list-news.of-type-03 b.label {
	background-color: #fff;
	border: 1px solid #707070;
}


/*お問い合わせ用ボタンを作成するため、クラスvar04を作成します*/
.mod-btn.var04 .btn{
	background-color: #FFFFFF;
}

@media screen and (min-width: 640px), print{
	.mod-btn.limit.var04 .btn {
		width: 500px;
		padding:40px 0;
	}
}

.mod-btn.var04 .btn a {
	color:#000000;
	border:none;
	font-size: 1.5em;
	font-weight: bolder;
}

.mod-btn.var04 .btn a::before {
	border-color: #000000 #000000 transparent transparent;
}

/*トップページ*/

/*メインビジュアル*/
.str-mainvisual-carousel-01 .slide-content::before {
	background: linear-gradient(to right,rgba(255, 255, 255, 0), rgba(255, 255, 255, 0));
	background-color: rgba(255,255,255,0.7);
	top: 20%;
	left: 0;
	width: 900px;
	height: 60%;
}

.str-mainvisual-carousel-01 .slide-content> .inner> .hdg{
	white-space: nowrap;
}

.str-mainvisual-carousel-01 .slide-content> .inner {
	margin-left: 12%;
}
@media screen and (min-width: 640px), print{
.str-mainvisual-carousel-01 .slick-dots-wrap {
    left:15%;
}
}


/*ニュースリリース*/
.mod-tab.toppage .tab-list> li[aria-selected="true"] {
	border: 3px solid #323E94;
	border-width: 3px 0 0;
}

.mod-tab.toppage .tab-list > li[aria-selected="true"] a {
    color:#000000;
}

.mod-tab.toppage .mod-list-news .tag {
	display: none;
}

/*ソリューション・サービス*/
.mod-btn.var05 .btn a {
	color:#323E94;
	width: 300px;
	line-height: 33px;
	font-size: 1.5em;
}

.mod-btn.var05 .btn a::before {
	width: 22px;
    height:22px;
	border-color: #323E94 #323E94 transparent transparent;
}

.mod-pnl-02.toppage> .inner> *> .pnl> .inner b.title {
	font-weight: bold;
}

.mod-pnl-02.toppage .mod-link:not(.of-list)::after {
    width: 15px;
    height: 15px;
    color: #323E94;
}

/*input入力欄*/

.mod-box-search:not(.of-narrow)> .content.toppage {
    padding: 0;
	background: none;
}

.mod-box-search> .content .form button {
    color: #323E94;
}

.mod-box-search> .content .form input {
    border: 2px solid #323E94;
}

.mod-box-search> .content .form input {
    padding: 12px 10px 10px 18px;
}

.mod-box-search> .content .form button> span::before {
	display: none;
}

.mod-box-search> .content .form button> span {
	padding:0;
}

@media screen and (min-width: 640px), print {
	.mod-box-search:not(.of-narrow)> .content .form .submit button {
		padding: 9px 0;
	}
	
	.mod-box-search:not(.of-narrow)> .content .form .submit {
		-webkit-flex-basis: 78px;
		flex-basis: 78px;
		width: 78px;
	}
	
	.mod-box-search:not(.of-narrow)> .content .form .input {
		-webkit-flex-basis: calc(100% - 78px);
		flex-basis: calc(100% - 78px);
		width: calc(100% - 78px);
		max-width: calc(100% - 78px);
	}
}


/*事例紹介*/
.mod-hdg-l4-02.toppage {
	color:#FFFFFF;
	border-left: 9px solid #FFFFFF;
}

.mod-box-05 .inner .col .box .mod-btn a {
	line-height: 2em;
}

.mod-btn.var06 .btn a {
	color:#FFFFFF;
	width: 300px;
	line-height: 33px;
	font-size: 1.5em;
}

.mod-btn.var06 .btn a::before {
	width: 22px;
    height:22px;
	border-color: #FFFFFF #FFFFFF transparent transparent;
}

/*企業情報ピックアップ*/
.mod-hdg-l2.toppage {
	color:#323E94;
}

/*サステナビリティについて*/
.of-bgcolor-20> [class^="str-outer"] {
    background: #E5F0FF;
    overflow: hidden;
}

/*ピックアップコンテンツ*/
.mod-pnl-04> .inner> .col> .pnl> .inner .title {
	margin-bottom: 50px;
}

/*IRページ*/

/*ランキング*/
.comp-list-rank .txt> a {
    font-size: 1.5em;
    font-weight: bold;
}

/*トピックス*/
.mod-lyt {
	max-width: 1320px;
}


.mod-lyt.of-float.irtopic:not([data-col])> .inner {
	flex-direction: column;
	align-items: normal;
}

@media screen and (min-width: 1024px), print{
.mod-lyt.of-float.irtopic:not([data-col])> .inner {
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
}

.irtopic .col.ir-col {
	width: calc(100% - 390px);
	}
}

.mod-lyt.irtopic .mod-box {
    width: 350px;
    border: 1px solid #8E8D8D;
    height: auto; 
    margin-left: 40px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}


.mod-lyt.irtopic .mod-box .title {
	font-size: 1.3em;
	font-weight: bold;
	color: #000000;
	margin-bottom: 30px;
}

.mod-lyt.irtopic .mod-box .title img {
	height: 16px;
	width: auto;
	margin-right: 8px;
}

.mod-lyt.irtopic p {
	margin: 20px auto;
}

.mod-lyt> .inner> * img:not(.icn) {
    display: inline-block;
}

.mod-lyt.irtopic .mod-box> .inner {
    margin: 20px 40px 30px 20px;
}


@media screen and (max-width: 1023px), print{
	.mod-lyt.irtopic .mod-box> .inner {
		margin: 40px;
		min-width: 250px;
	}
	
	.mod-lyt.irtopic .mod-box{
		margin-left: 0px;
		width: 100%;
	}
}


.mod-lyt.of-float.irtopic .mod-list-news.of-type-03 b.label{
    background-color: #323E94;
    border: none;
    color:#FFFFFF;
}




/*support*/
.mod-lyt.of-float.support:not([data-col])> .inner {
    justify-content: space-between;
}

.mod-btn.var07 .btn a {
    color: #323E94;
    border: none;
    font-size: 1.5em;
    font-weight: bolder;
	background-color: #FFFFFF;
	width: 340px;
}

.mod-lyt.of-float.support div.limit .btn a {
    padding: 30px;
    line-height: 1.5;
}

.mod-btn.var07 .btn a::before {
	border: 2px solid;
    border-color: #323E94 #323E94 transparent transparent;
}

.mod-lyt.of-float.support .mod-link li:nth-child(1) a {
	font-size: 1.5em;
	font-weight: bold;
	color: #323E94;
	margin-right: 50px;
}

.mod-lyt.of-float.support .mod-link.of-list.of-float> .list {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    align-items: baseline;
}

@media screen and (max-width: 864px), print{
	.mod-lyt.of-float.support .mod-link.of-list.of-float> .list {
		flex-direction: column;
		width: 150%;
	}

	.mod-lyt.of-float.support{
		margin: 0 20px;
	}
}

@media screen and (max-width: 648px), print{
	.mod-btn.var07 .btn a {
		width: 85vw;
	}
}

.mod-lyt.of-float.support .mod-link.of-list> .list> li:nth-child(1)> a::after {
    width: 15px;
    height: 15px;
	color: #323E94;
	border: 2px solid;
    border-width: 2px 2px 0 0;
}

/*IR情報アイコン色*/
.mod-link.of-list> .list> .before-linkicon.blue> a::before {
	color: #323E94;
}

/*お問い合わせボタン中央*/
div.mod-btn.limit.info {
	justify-content: center;
}

.mod-btn.var04.info .btn a::before {
	display: none;
}

div.mod-btn.limit.info-2 {
	justify-content: center;
}

/*ソリューション・サービスページ*/
/*タブ*/
.mod-tab.sou .tab-list> li[aria-selected="true"] {
	border: 3px solid #323E94;
	border-width: 3px 0 0;
}

.mod-tab.sou .tab-list> li[aria-selected="true"] a {
    color: #323E94;
}

/*ボタンセット*/

.mod-btn.var02.big a {
	padding: 0 50px;
 	width: 100%;
 	height: 80px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

div.mod-btn.var02.big.solution .btn {
	width:25%;
	padding: 36px 0 0 36px;
}

@media screen and (max-width: 639px), print {
	div.mod-btn.var02.big.solution .btn {
		width: 100%;
		padding: 0px;
	}
}

@media screen and (min-width: 640px) and (max-width: 1024px), print {
	div.mod-btn.var02.big.solution .btn {
		width: 50%;
		padding: 16px 0 0 16px;
	}
}

div.mod-btn.var02.big.solution {
	justify-content: flex-start;
	flex-wrap: wrap;
}

@media screen and (min-width: 481px), print {
	.mod-tab.sou div.mod-btn.var02 {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
}

/*目的業種選択*/
.of-bgcolor-19> [class^="bgcolor"] {
    background: #dadef0;
    overflow: hidden;
}

.industry , .purpose {
	display: flex;
    justify-content: space-around;
}

.industry .mod-input-radio.search-box {
	width: 90%;
}

.purpose .mod-input-check.search-box {
	width: 90%;
}

/*ボタンセットクラス作成*/
.mod-btn.var03noicon a{
	color: #323E94;
	padding: 10px 30px;
}

.mod-btn.var03noicon a::before{
	display:none;
}


/*ソリューションサービス用moreボタン*/
.more-item {
  position: relative;
  overflow: hidden;
  height: 645px; /*隠した状態の高さ*/
}

.more-btn .btn > span {
	cursor: pointer;
	color:#04127c;
	padding: 5px 40px 6px 56px;
}

.more-btn .btn> span::before {
	width: 25px;
	height: 25px;
	top:-1px;
	border-color:#04127c #04127c transparent transparent;
}

.more-btn.more {
  display: none;
}
.more-item.more {
  height: auto;
}
.more-item.more::before {
	display: none;
}

div.mod-box.of-scroll> .inner {
  height: auto;
}


/*Top緊急お知らせ調整*/
.mod-box-03> .inner> .col> .box {
	width: 100%;
}

/*spカテゴリボックス調整*/
@media screen and (max-width: 648px), print{
.mod-lyt[data-col]> .inner> * {
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    width: 100%;
    max-width: 100%;
}
}

/*bg調整*/
.bg-white {
  background: #FFFFFF;
}

/*お問い合わせ*/
.contactFrmSub-btn,.contactFrmSub-btn-left {
    position: relative;
}
.contactFrmSub-btn > input,.contactFrmSub-btn-left > input {
    font-size: 1.8rem;
    line-height: 1.3;
    text-decoration: none;
    text-align: center;
    word-wrap: break-word;
    color: #be375a;
    background: transparent;
    display: inline-block;
    max-width: 100%;
    padding: 1px 34px 1px 50px;
    transition: .2s ease;
    border: 2px solid;
    cursor: pointer;
}

.contactFrmSub-btn > input:hover,.contactFrmSub-btn-left > input:hover {
    opacity: 1;
}
.contactFrmSub-btn-left::before {
    left: 22px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.contactFrmSub-btn::before,.contactFrmSub-btn-left::before {
    position: absolute;
    top: 0;
    right: auto;
    bottom: 0;
    display: block;
    width: 20px;
    height: 20px;
    margin: auto;
    content: "";
    transition: .2s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border: 1px solid;
    border-color: #be375a #be375a transparent transparent;
    cursor: pointer;
}
.contactFrmSub-btn-left::before {
    left: 22px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.contactFrmSub-btn-left:hover::before {
    left: 17px;
}

.contactFrmSub-btn::before {
    left: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.contactFrmSub-btn:hover::before {
    left: 15px;
}
.contactFrmSub-acenter {
    text-align: center;
}
.contactFrmSub-acenter > .contactFrmSub-btn {
    display: inline-block;
}

/*mod-box-05　ボタン下部固定*/
.mod-box-05.btn-b-fixed> .inner> .col> .box> *:last-child {
  margin-top: auto;
}
.mod-box-05.btn-b-fixed> .inner> .col> .box {
  display: flex;
  flex-direction: column;
}

.site-header-02> .inner> .content> .logo > .siteName > a {
    text-decoration: none;
}
.site-header-02> .inner> .content> .logo img {
	height:27px;
	width:auto; 
}
.site-header-02> .inner> .content> .logo p {
    margin: 0.5em 0;
}


@media screen and (max-width: 480px), print {
	.site-header-02> .inner> .content> .logo img {
		height:21px;
	}
	.site-header-02> .inner> .content> .logo p {
		font-size: 12px;
	}
}

/*アンカー位置調整*/
@media screen and (min-width: 1025px), print {
h2[id].anc-adj{
   display:block;
}
*[id].anc-adj{
   margin-top:-110px!important;
   padding-top:110px!important;
}
*[id].mt-0.anc-adj {
   margin-top:-110px!important;
   padding-top:110px!important;
}

*[id].mt-5.anc-adj {
   margin-top:-105px!important;
   padding-top:110px!important;
}

*[id].mt-10.anc-adj {
   margin-top:-100px!important;
   padding-top:110px!important;
}

*[id].mt-15.anc-adj {
   margin-top:-95px!important;
   padding-top:110px!important;
}

*[id].mt-20.anc-adj {
   margin-top:-90px!important;
   padding-top:110px!important;
}

*[id].mt-25.anc-adj {
   margin-top:-85px!important;
   padding-top:110px!important;
}

*[id].mt-30.anc-adj {
   margin-top:-80px!important;
   padding-top:110px!important;
}

*[id].mt-35.anc-adj {
   margin-top:-75px!important;
   padding-top:110px!important;
}

*[id].mt-40.anc-adj {
   margin-top:-70px!important;
   padding-top:110px!important;
}

*[id].mt-45.anc-adj {
   margin-top:-65px!important;
   padding-top:110px!important;
}

*[id].mt-50.anc-adj {
   margin-top:-60px!important;
   padding-top:110px!important;
}

*[id].mt-55.anc-adj {
   margin-top:-55px!important;
   padding-top:110px!important;
}

*[id].mt-60.anc-adj {
   margin-top:-50px!important;
   padding-top:110px!important;
}

*[id].mt-65.anc-adj {
   margin-top:-45px!important;
   padding-top:110px!important;
}

*[id].mt-70.anc-adj {
   margin-top:-40px!important;
   padding-top:110px!important;
}

*[id].mt-75.anc-adj {
   margin-top:-35px!important;
   padding-top:110px!important;
}

*[id].mt-80.anc-adj {
   margin-top:-30px!important;
   padding-top:110px!important;
}

*[id].mt-85.anc-adj {
   margin-top:-25px!important;
   padding-top:110px!important;
}

*[id].mt-90.anc-adj {
   margin-top:-20px!important;
   padding-top:110px!important;
}

*[id].mt-95.anc-adj {
   margin-top:-15px!important;
   padding-top:110px!important;
}

*[id].mt-100.anc-adj {
   margin-top:-10px!important;
   padding-top:110px!important;
}
}
@media screen and (max-width: 1024px), print {
h2[id].anc-adj{
   display:block;
}
*[id].anc-adj{
   margin-top:-50px!important;
   padding-top:50px!important;
}
*[id].mt-0.anc-adj {
   margin-top:-50px!important;
   padding-top:50px!important;
}

*[id].mt-5.anc-adj {
   margin-top:-45px!important;
   padding-top:50px!important;
}

*[id].mt-10.anc-adj {
   margin-top:-40px!important;
   padding-top:50px;
}

*[id].mt-15.anc-adj {
   margin-top:-35px!important;
   padding-top:50px!important;
}

*[id].mt-20.anc-adj {
   margin-top:-30px!important;
   padding-top:50px!important;
}

*[id].mt-25.anc-adj {
   margin-top:-25px!important;
   padding-top:50px!important;
}

*[id].mt-30.anc-adj {
   margin-top:-20px!important;
   padding-top:50px!important;
}

*[id].mt-35.anc-adj {
   margin-top:-15px!important;
   padding-top:50px!important;
}

*[id].mt-40.anc-adj {
   margin-top:-10px!important;
   padding-top:50px!important;
}

*[id].mt-45.anc-adj {
   margin-top:-5px!important;
   padding-top:50px!important;
}

*[id].mt-50.anc-adj {
   margin-top:0px!important;
   padding-top:50px!important;
}

*[id].mt-55.anc-adj {
   margin-top:5px!important;
   padding-top:50px!important;
}

*[id].mt-60.anc-adj {
   margin-top:10px!important;
   padding-top:50px!important;
}

*[id].mt-65.anc-adj {
   margin-top:15px!important;
   padding-top:50px!important;
}

*[id].mt-70.anc-adj {
   margin-top:20px!important;
   padding-top:50px!important;
}

*[id].mt-75.anc-adj {
   margin-top:25px!important;
   padding-top:50px!important;
}

*[id].mt-80.anc-adj {
   margin-top:30px!important;
   padding-top:50px!important;
}

*[id].mt-85.anc-adj {
   margin-top:35px!important;
   padding-top:50px!important;
}

*[id].mt-90.anc-adj {
   margin-top:40px!important;
   padding-top:50px!important;
}

*[id].mt-95.anc-adj {
   margin-top:-45px!important;
   padding-top:50px!important;
}

*[id].mt-100.anc-adj {
   margin-top:50px!important;
   padding-top:50px!important;
}
}

/*align-items: baseline;追加*/
.align-base{
   align-items: baseline!important;
}

	
@media screen and (max-width: 480px), print{
	.mod-lyt.irtopic .mod-box> .inner{
		margin: 10px; 
		width: 100%; 
		min-width: 250px;
	}
}
	

@media screen and (max-width: 640px), print {
	.mod-link.of-list.of-float> .list.ir {
		display: flex;
		flex-direction: column;
		margin: 0;
	}
	
	/*IRお問い合わせボタン修正*/
	.mod-lyt> .inner> .mod-btn.limit.var07 {
		padding: 0;
	}
	
	.mod-lyt.of-float.support {
		margin: 0 auto;
	}
}

.mod-lyt.of-float.support .inner .col:last-child{
	margin: auto;
}


/*ボタンSP時の寄せ可能に
div.mod-btn {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}
div.mod-btn.align-left {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}
div.mod-btn.align-right {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}*/

/*お問い合わせエラー文表示調整*/
#ContactFrm label.error {
    padding-top: 12px;
    display: block;
    color: #f07373;
}

/*汎用最上部マージン除去*/
.str-column-main .fie .str-outer:first-child > .str-inner > .mod-hdg-l2-02 {
    margin-top: 0px;
}
.str-column-main .fie .str-outer:first-child > .str-inner > .mod-txt> p b.lede{
    margin-top: 0px;
}

/*ソリューション一覧カードのタグ色変更*/
div.mod-pnl-03 .tagList> .list li {
    background: #be375a;
    color: #fff;
}

/*aタグ色変更*/
.nav-local .root a,
.nav-local .content a,
a .mod-media-lyt-flt,
 a .mod-media-lyt-lqd,
.mod-pnl-03> .list> li> a  {
    color: #000;
}


.add-mts a {
    color: #006fff;
}

.add-mts .mod-btn a {
    padding-left: 50px;
}
.add-mts .mod-btn a,
.add-mts .mod-btn button,
.add-mts .mod-btn> span,
.add-mts .mod-btn .btn> span {
    color: #be375a;
}
/*MV調整*/
@media screen and (min-width: 1025px), print{
.str-mainvisual> .str-inner> .image img {
    min-width: 100%;
}
}

@media screen and (min-width: 640px), print{
.mod-pnl-04> .inner> .col> .pnl> .inner> .tgl-hook> .title {
    font-size: 1.8rem;
}
.mod-pnl-04> .inner> .col> .pnl> .inner> .tgl-content> .text {
    font-size: 1.2rem;
}
}


/*検索結果ページページャースタイル調整*/
.mf_finder_organic_pager .mf_finder_pager_items .mf_finder_pager_item_first a span,
.mf_finder_organic_pager .mf_finder_pager_items .mf_finder_pager_item_next a span,
.mf_finder_organic_pager .mf_finder_pager_items .mf_finder_pager_item_prev a span {
    width: 100%;
    height: 100%;
}

/*株価表示*/
#box_stock {
background: rgba(255,255,255,0.8);
position: absolute;
top: 2.6666666666666665vw;
right: 2.6666666666666665vw;
min-width: 391px;
padding: 1.5vw;
}
#box_stock p.title,
#box_stock p.value {
display: flex;
align-items: baseline;
margin-bottom: 0.5rem;
padding-bottom: 0.25rem;
border-bottom: 1px solid #808080;
}
#box_stock p.title > *:first-child,
#box_stock p.value > *:first-child {
display: inline-block;
margin-right: 1rem;
}
#box_stock p.value > *:first-child {
margin-right: 4rem;
}
#box_stock strong {
font-size: 2.25rem;
}
#box_stock strong.price {
font-size: 3rem;
}
#box_stock p.value strong span + span {
font-size: 1.75rem;
display: inline-block;
margin-left: 1rem;
}
#box_stock .date {
margin-bottom: 0;
font-size: 1.25rem;
display: flex;
justify-content: space-between;
}
#box_stock d.date span {
display: inline-block;
}
@media screen and (max-width: 1024px), print{
#box_stock {
position: relative;
top: inherit;
right: inherit;
width: 100%;
}
}
/*icon調整（最新拡張子追加）*/
a[href$=".pptx"],
a[href$=".xlsx"],
a[href$=".docx"] {
  position: relative;
  padding-left: 24px;
}

a[href$=".pptx"] .icn,
a[href$=".xlsx"] .icn,
a[href$=".docx"] .icn, {
  position: absolute;
  top: .195em;
  left: 0;
  margin: 0 20px 0 0;
}
.mod-link.of-list> .list> li> a[href$=".pptx"] .icn,
.mod-link.of-list> .list> li> a[href$=".xlsx"] .icn,
.mod-link.of-list> .list> li> a[href$=".docx"] .icn
{
  position: absolute;
  top: .2857142857142857em;
  left: 0;
  margin: 0 20px 0 0;
}

footer.site-footer div.seg-primary div.str-outer-wide div.str-inner div.link ul.list {
justify-content: left;
}

footer.site-footer div.seg-primary div.str-outer-wide div.str-inner div.link> ul.list> li {
margin: 0 30px 12px;
min-width: 200px;
}
.acenter {
  text-align: center !important;
}

.aright {
  text-align: right !important;
}