@charset "UTF-8";

/*CSSDocument*/


/* html body base
===============================================================*/

/*
html ----------------------------------------------------------*/

*{ margin:0px; padding:0px; }
body{
	color:#333333;
	margin:0;
	padding:0;
	background:#fff;
	font-family: 'Noto Sans JP','游ゴシック体', 'Yu Gothic', YuGothic,"ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif" !important;
	font-family: "fot-tsukuardgothic-std", sans-serif !important;
	line-height: 1.5;
	text-align:center;
	font-size:100%;
	-webkit-text-size-adjust: 100%;
	font-feature-setting : "palt";
	min-width: 320px;
}
a{
	color:rgba(74,110,167,1);
	text-decoration:none !important;
}
a:visited{
	color:rgba(74,110,167,1);
	text-decoration:none;
}
a:hover{
	color:rgba(74,110,167,0.7);
	text-decoration:underline;
}
a:active{
	color:rgba(74,110,167,1);
	text-decoration:underline;
}
ul{ list-style:none;}

a:hover img {
	filter: alpha(opacity=70) !important;
	-moz-opacity:0.70 !important;
	opacity:0.70 !important;
	-webkit-transition: all .2s linear;
}
img{
	margin:0;
	padding:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
}

/* 「pc」、「sp」に「!important」をつけるとデザインが崩れるため、つけてはいけない。 */
.sp{display:none;}
.pc{display:block;}
@media screen and (max-width: 768px) {
	img{
		max-width:100%;
		height:auto;
	}
	.sp{display:block;}
	.pc{display:none;}
}

/*サイズによる消去*/
/* 「!important」付きの表示切替クラス。 */
@media (max-width: 767px) {
	.hidden-s {display: none !important;}
}
@media (min-width: 768px) {
	.hidden-l {display: none !important;}
}



/*
html ----------------------------------------------------------*/

/* body base
==============================================================*/		

/* header
===============================================================*/
header{
	width: 100%;
	z-index: 1000;
	box-sizing: border-box;
	text-align: right;
	position: fixed;
	background: rgba(255,255,255,0);
	transition: all .3s ease-in;
}

#content header {background: rgba(255,255,255,.9)}
header.is-back {background: rgba(255,255,255,.9)}
#top.open header,#top.en_open header {background: #fff}

header .is-inner{
	width: 1120px;
	margin: 0 auto;
	padding: 20px 0;
	box-sizing: border-box;
}
@media screen and (max-width: 1200px) {
	header .is-inner{
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
	}
}
@media screen and (max-width: 940px) {
	header .is-inner{
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
		height: 80px;
	}
}
header .is-inner._contact{ text-align: left; }

header .head-l{
	display: inline-block;
	vertical-align: top;
	float: left;
}
header h1{
	display: inline-block;
	vertical-align: top;
}

#global-en {
	display: inline-block;
	position: relative;
	font-size: 15px;
	margin-left: 1em;
	padding: 10px 0;
}

nav#global{
	display: inline-block;
	letter-spacing: -.4em;
	vertical-align: middle;
	width: calc(100% - 323px);
}
nav#global > ul{
	display:table;
	width: 720px;
	float: right;
}
nav#global > ul > li{
	display: table-cell;
	font-size: 108%;
	width: 120px;
    vertical-align: middle;
	white-space: nowrap;
}

nav#global li > span{
	width: 100%;
	display: block;
}
nav#global > ul > li > a,
nav#global > ul > li{
	text-align: center;
	padding-bottom: 15px;
	letter-spacing: 0;
	cursor: pointer;
	font-style: normal;
	position: relative;
	transition: all .2s ease-in;
	text-decoration:none;
}

nav#global li > span > a{
	display: block;
	color: inherit;
}
nav#global li > span .txt_jp{
	display: block;
	font-size: 12px;
}
nav#global li .nav_hide01,
nav#global li span .nav_hide01{display: none;}


/* SP版Englishボタン 220912*/
#global-en_sp { display: none; }
#global-en_sp-btn{
	display: none;
	font-size: 15px;
	margin-left: 1em;
	padding: 10px 0;
}
#top.en_open #global-en_sp-btn{color: #00d2fd;}

#top nav#global > ul .menu dd .seal_link_pc, #content nav#global > ul .menu dd .seal_link_pc {display: block; margin-top: 45px; padding-right: 20px;}
#top nav#global > ul .menu dd .seal_link_sp, #content nav#global > ul .menu dd .seal_link_sp {display: none;}

@media screen and (max-width: 1120px) {
	nav#global > ul{
		display:table;
		width: 96%;
		min-width: 480px;
		margin-left: 4%;
	}
	nav#global li{width: calc(100% / 6);}
}
@media screen and (max-width: 940px) {
	header h1{
		display: inline-block;
		vertical-align: top;
		float: left;
		width: 140px;
		padding-top: 5px
	}
	#global-en,
	nav#global > ul > li,
	nav#global > ul > li span.txt_jp{font-size: 88%;} 
}
#global-en a:hover,
nav#global li > a:hover,
nav#global li a.is-current,
nav#global li.is-current{
	color: #00d2fd;
	text-decoration: none;
	padding-bottom: 15px;
}
nav#global li a.is-current,
nav#global li.is-current{background: url("../images/renewal/menu_bar.png") no-repeat bottom center;}

@media screen and (min-width: 769px) {
	#global-en:hover,
	nav#global > ul > li:hover{color: #00d2fd;}
}

@media screen and (max-width: 769px) {

	#content nav#global > ul .menu dd .seal_link_pc,
	#top nav#global > ul .menu dd .seal_link_pc {
		display: none;
	}
	#content nav#global > ul .menu dd .seal_link_sp,
	#top nav#global > ul .menu dd .seal_link_sp {
		display: block;
		padding-left: 40px;
	}

}

#content nav#global li > a,
#content nav#global li,
header.is-back nav#global li a,
header.is-back nav#global li{
	color: #666;
	position: relative;
	transition: all .2s ease-in;
}
header.is-back nav#global li a,
header.is-back nav#global li{ color: #666; }

#content nav#global li a:hover,
#content nav#global li a.is-current,
#content nav#global li:hover,
#content nav#global li.is-current,
header.is-back nav#global li a:hover,
header.is-back nav#global li a.is-current,
header.is-back nav#global li:hover,
header.is-back nav#global li.is-current{ color: #00d2fd; }

#global-en::after,
nav#global li::after{
	position: absolute;
	bottom: 5px;
	left: 0;
	content: '';
	width: 100%;
	height: 4px;
	background: url("../images/renewal/menu_bar.png") no-repeat bottom center; /* ☆230921 これでアンダーバーが出てる。過剰分修正 */
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
#global-en:hover:after,
nav#global li > a:hover::after,
nav#global li:hover::after { transform: scale(1, 1); }

.h-search{
	display: inline-block;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	position:relative
}
.h-search .search{
	z-index:-1;
	visibility:hidden;
	max-height:0;
	opacity:0;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
}
.h-search.open .search{
	z-index:1;
	display:block;
	position:absolute;
	right:30px;
	top:-3px;
	width:530px;
	visibility:visible;
	max-height:9999px;
	opacity:1;
	border-radius:0;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
}
.h-search .search form,
.h-search .search input,
.h-search .search button,
.h-search .search select,
.h-search .search textarea {
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
}
.h-search .search input[type="text"]{
	background:#fff;
	border:3px solid #2c4d7a;
	padding:12px 5px;
	box-sizing:border-box;
	width:10px;
	transition:width .4s ease-out;
}
.h-search.open .search input[type="text"]{
	width:470px;
	transition:width .4s ease-out;
}

#global-en .menu,
nav#global > ul .menu {
	display: none;
	position: absolute;
	background: url("../images/menu_toggle_back.png") no-repeat center 10px;
	background-size:cover;
	width: 200vw;
	max-height: 0;
	text-align: center;
	top:30px;
	left: 50%;
	right: 50%;
	opacity: 0;
	z-index: 0;
	margin-left: -100vw;
	margin-right: 0;
}

#global-en:hover .menu,
nav#global > ul > li:hover .menu {
	max-height: 9999px;
	opacity: 1;
	z-index: 1000;
	transition: max-height 1s ease-in;
	display: block;
	padding: 55px 0;
	cursor: auto;
}

#global-en .menu::after,
nav#global > ul > li .menu::after{
	content: "";
	display: block;
	clear: both;
}
nav#global > ul .menu .submenu-inner {
	width: 100vw;
	margin: 0 auto;
}

#global-en .menu dl,
nav#global > ul .menu dl{
	color: #fff;
	text-align: center;
	display: table;
	max-width:1152px;
	width: 90vw;
	margin: 0 auto;
	position: relative;
	right: 0;
	left: 0;
}
nav#global > ul .menu dl.corporate{
	left:22vw;
	right: auto;
}
nav#global > ul .menu dl.product{
	left:22vw;
	right: auto;
}
nav#global > ul .menu dl.service{
	left:20vw;
	right: auto;
}
nav#global > ul .menu dl.news{
	left:18vw;
	right: auto;
}
nav#global > ul .menu dl.ir{
	right:12vw;
	left:auto;
}

/* 英訳ページ追加 220817 */
#global-en .menu dl.english{
	left:22vw;
	padding-left: 150px;
}

#global-en .menu dt,
nav#global > ul .menu dt{
	border-right:2px solid #4d4d4d;
	width: 15%;
	display: table-cell;
	box-sizing: border-box;
	text-align: center;
	font-size: 131%;
	vertical-align: top;
}
nav#global > ul .menu dt .fo_small{
	border: none;
	font-size: 76%;
	font-weight: normal;
	margin-top: 10px;
}

#global-en .menu dd,
nav#global > ul .menu dd{
	width: 85%;
	display: table-cell;
	font-size: 100%;
	letter-spacing: 0;
	vertical-align: top;
	padding-left: 3%;
	text-align: left;
	font-weight:normal;
	box-sizing: border-box;
}

#global-en .menu dd ul,
nav#global > ul .menu dd ul{
	min-width: 20%;
	display:block;
	float:left;
	vertical-align: top;
}

#global-en .menu dd li,
nav#global > ul .menu dd li{ width:100%; }

#global-en .menu dd li a,
#content nav#global > ul .menu dd li a,
#top nav#global > ul .menu dd li a,
#content nav#global-en_sp .menu dd li a,
#top nav#global-en_sp .menu dd li a{
	text-align: left;
	color: #fff;
	margin-bottom: 20px;
	background: url("../images/toggle-menu-link-arrow.svg") no-repeat 94% 50%;
	padding: 5px 2em 5px 15px;
	display:block;	
	transition: all .2s ease-in;
	text-decoration:none;
	font-weight:normal !important;
	width:100%;
	box-sizing:border-box;
	word-break:break-all;
	white-space: normal;
}
#global-en .menu dd li a:hover,
#content nav#global > ul .menu dd li a:hover,
#top nav#global > ul .menu dd li a:hover{ background: url("../images/toggle-menu-link-arrow.svg") no-repeat 98% 50%; }

#global-en .menu dd li::after,
nav#global > ul .menu dd li a::after,
nav#global > ul .menu dd li::after{
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	height: 0;
	width:100%;
	transform: scale(1,1);
	transform-origin: right top;
	transition: transform .3s;
}
#global-en .menu li a:hover::after,
nav#global > ul > li a:hover::after,
nav#global > ul > li:hover::after { transform: scale(1, 1); }

@media screen and (max-width: 1120px) {
	nav#global > ul .menu dl.ir{
		right:15vw;
		left:auto;
	}
}
@media screen and (max-width: 768px) {
	header{ height: 80px;}

	header .is-inner{
		padding: 25px 0;
		position: relative;
	}
	header h1{
		display: inline-block;
		vertical-align: top;
		float: left;
		width:auto;
		height: 30px;
		padding-top: 0;
	}
	header h1 img{
		height:30px;
		width:auto;
	} 
	.h-search{
		display: block;
		top: 24px;
		right: 40px;
		width: 30px;
		vertical-align: top;
		margin-left: 0;
		position: absolute;
	}
	.h-search img{
		max-width: 100%;
		width: 100%;
		height: auto;
	}
	.h-search input[type="image"]{ width: 32px; }

	.h-search.open .search{
		z-index:1;
		display:block;
		position:absolute;
		right:40px;
		top:1px;
		width:530px;
		visibility:visible;
		max-height:9999px;
		opacity:1;
	}
	#global-en,
	nav#global{
		display:none;
		visibility: hidden;
		opacity: 0;
		z-index: 0;
	}
	#global-en_sp-btn{display: inline-block;}

	.close{
		position: fixed;
		display:block;
		top:15px;
		right:0;
		z-index:10000;
		transition-property: right;
		transition-duration: .32s;
		transition-timing-function: ease-out;
	}
	.sp_menu.open{
		display:block;
		position:absolute;
		top:0;
		right:0;
		z-index:10000;
		transition-property: right;
		transition-duration: .32s;
		transition-timing-function: ease-out;
	}
	#nav-toggle {
		position: absolute;
		top: 10px;
		right: 0;
		height: 40px;
		cursor: pointer;
		z-index: 1000;
	}
	#nav-toggle > div {
		position: relative;
		width: 30px;
	}
	#nav-toggle .sp_menu{
		font-size: 77%;
		font-style: normal;
		padding-top: 20px;
		display: block;
	}
	#nav-toggle span {
		width: 100%;
		height: 3px;
		left: 0;
		display: block;
		background: #2c4d7a;
		position: absolute;
		transition: top .5s ease, -webkit-transform .6s ease-in-out;
		transition: transform .6s ease-in-out, top .5s ease;
		transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out;
		z-index: 1000;
	}
	#third #nav-toggle span { background: #fff; }

	#nav-toggle span:nth-child(1) { top: 0; }
	#nav-toggle span:nth-child(2) { top: 12px; }
	#nav-toggle span:nth-child(3) { top: 25px; }
	#nav-toggle:hover span:nth-child(1) { top: 2px; }
	#nav-toggle:hover span:nth-child(3) { top: 23px;}
	.open #nav-toggle span { background: #2c4d7a; }
	.open #nav-toggle span:nth-child(1) {
		top: 10px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.open #nav-toggle span:nth-child(2) {
		top: 10px;
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 10px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.open nav#global,
	nav#global-en_sp.open {
		background: #fff;
		width: 100vw;
		position: fixed;
		top: 80px;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 99999;
		text-align: center;
		display: block;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 123%;
		visibility: visible;
		opacity: 1;
		transition: opacity .6s ease, visibility .6s ease;
		box-sizing: border-box;
		overflow: auto;
		border-top:1px solid #c8c8c8;
		margin-top: 0;
		padding-top: 0;
	}

	nav#global > ul,
	nav#global-en_sp > div{
		display:block;
		width: 100%;
		min-width: auto;
		float: none;
		text-align: left;
		box-sizing: border-box;
		margin: 0;
	}
	nav#global > ul > li{font-size: 100%;} 

	.open nav#global > ul > li{
		display:block;
		width: 100%;
		text-align: left;
		box-sizing: border-box;
		border-bottom:1px solid #c8c8c8;
	}
	nav#global > ul > li > a,
	nav#global > ul > li{
		display: block;
		text-align: left;
		padding: 0;
		font-style:normal;
		color: #666;
	}

	nav#global > ul > li > .nav_item.sp_off > a{pointer-events: none;}

	#top nav#global-en_sp{ color: #666; }
	#top nav#global li a img{ height: 30px; }

	.open nav#global li a span,
	.open nav#global li > span,
	nav#global-en_sp.open span{
		border:none;
		display:block;
		padding: 15px 5%;
		font-weight:bold;
	}
	
	nav#global ul li span.txt_jp{
		margin-top: 3px;
		padding: 0;
	}
	.open nav#global li span > span.fo_small{
		display:inline-block;
		font-size: 76%;
		font-weight: normal;
		padding: 0;
	}

	nav#global li a::after,
	nav#global li::after{ display: none !important; }
	
	nav#global li a:hover::after,
	nav#global li:hover::after { transform: scale(0, 0); }
	nav#global li:last-child a{top: 0;}
	nav#global li:hover{padding-bottom: 0;}

	.open nav#global li .is-current a,
	.open nav#global li span.is-current,
	nav#global-en_sp span{
		color: #00d2fd;
		text-decoration: none;
		background: none;
	}

	.open nav#global li span + .menu,
	nav#global-en_sp .menu{
		display: none;
		transition-property:opacity;
	}
	.open nav#global li span + .menu,
	nav#global-en_sp .menu{
		position: relative;
		text-align: center;
		background: rgba(90,90,90,1);
		z-index: 9999;
		opacity:1;
		width: 100%;
		padding: 0;
		box-sizing: border-box;
	}
	nav#global-en_sp.open span.is-current + .menu{
		display: block;
		opacity: 1;
	}

	.open nav#global li span.is-current + .menu dl,
	nav#global-en_sp.open .menu dl{
		width: 100vw;
		margin: 0 auto;
	}
	.open nav#global li .menu dt,
	nav#global-en_sp.open .menu dt{display:none;}
	.open nav#global li span + .menu dd,
	nav#global-en_sp.open .menu dd{
		display:block;
		width: 100%;
		padding-left: 0;
		box-sizing: border-box;
	}

	.open nav#global li span + .menu dd ul,
	nav#global-en_sp.open .menu dd ul{
		display:block;
		width: 100%;
	}
	.open nav#global li span + .menu dd li,
	nav#global-en_sp.open .menu dd li{
		display:block;
		width: 100%;
		border: none;
		margin: 0;
		padding: 0 0;
		box-sizing: border-box;
	}
	
	nav#global > ul .menu {
		transition: max-height .5s ease-out;
		max-height: 0;
		opacity: 0;
		top:0;
		width: 200vw;
		left: 0;
		right: 0;
		margin: 0;
		text-align: left;
	}

	nav#global > ul .menu dl.corporate,
	nav#global > ul .menu dl.product,
	nav#global > ul .menu dl.service,
	nav#global > ul .menu dl.news,
	nav#global > ul .menu dl.ir,
	nav#global > ul .menu dl.english{
		width: 100%;
		left:auto;
		right:auto;
		padding:0;
	}

	#top nav#global ul .menu dd li a,
	#content nav#global ul .menu dd li a,
	#top nav#global-en_sp div .menu dd li a,
	#content nav#global-en_sp div .menu dd li a{
		margin: 0;
		box-sizing: border-box;
		border-bottom: 1px solid #4d4d4d;
		padding: 3% 3% 3% 10%;
		width: 100%;
	}
}

#gototop{
	position:fixed;
	top:0;
	right:2%;
	z-index:9999;
}

@media screen and (max-width: 768px) {
	#gototop{ display:none !important; }
	#gototop-sp{
		background: #e6ebf1;
		text-align:right;
		padding: 2%;
	}
}
@media screen and (max-width: 580px) {
	.h-search.open .search input[type="text"]{
		width:200px;
		transition:width .4s ease-out;
	}
}

/* footer 
------------------------------------------------------------*/
footer{
	position:relative;
	width: 100%;
	overflow: hidden;
	background: #7dabcf;
	text-align: center;
	color: #fff;
	z-index:10;
	padding: 0 20px;
}
footer .is-inner{
	width: 1200px;
	margin: 0 auto;
	padding: 0 0 25px;
}
.f-identity{
	padding-bottom: 38px;
	margin-bottom: 25px;
}

/* フッターナビ */
.f-logo-first{
	position: absolute;
	top: 90px;
	left: 90px;
}
.f-logo-sns {
	display: flex;
	position: absolute;
	top: 65px;
	left: 300px;
}
.f-logo-sns figure {width: 40px;}
.f-logo-sns figure:first-child {margin-right: 10px;}
#f_global{
	display: flex;
	max-width: 1040px;
	text-align: left;
	margin: 120px auto 40px;
	padding: 0 30px;
}
#f_global > ul{	width: calc(98% / 3);}
#f_global > ul:not(:last-child){margin-right: 5%;}
#f_global dt{
	font-size: 14px;
	font-weight: bold;
	background-image : linear-gradient(to right, #fff 10px, transparent 10px);
	background-size: 20px 1px;
	background-repeat: repeat-x; 
	background-position: left bottom;
	padding: 1em;
}
#f_global dd{
	font-size: 14px;
	font-weight: bold;
	padding: 20px 0 20px 20px;
}

#f_global dd > ul > li{padding: 1em 0;}
#f_global dd > ul > li i.fa-solid{padding-left: .5em;}
#f_global dt > a,
#f_global dd > ul > li > a{color: #fff;}
#f_global dt a:hover,
#f_global dd > ul > li > a:hover{opacity: .5;}
#f_global dd > ul > li > a span{font-size: 13px;}


.logo-copy{
	display:inline-block;
	vertical-align: middle;
	font-size: 123%;
	font-weight: bold;
	padding: 0 .5em;
}
.f-logo-second{
	display:inline-block;
	vertical-align: middle;
	width: 157px;   
}
.f-logo-group{
	border-bottom: 1px solid #4d4d4d;
	margin-bottom:4%;
	padding-bottom:4%;
}
 
.f-logo-group ul{ letter-spacing:-.4em; }
.f-logo-group li{
	display:inline-block;
	padding:0 3%;
	border-right:1px solid #474747;
	box-sizing:border-box;
}
.f-logo-group li:first-child img{
	padding-top:7px; 
	width:143px;
}
.f-logo-group li:nth-child(2) img{ padding-top:9px; }
.f-logo-group li:last-child{ border-right:none; }
.f-logo-group li:last-child img{ max-width:140px; }

nav.f-nav{
	letter-spacing: -.4em;
	padding-bottom: 35px;
}
nav.f-nav li{
	letter-spacing: 0;
	display: inline-block;
}
nav.f-nav li a{
	letter-spacing: 0;
	font-size: 108%;
	font-weight: bold;
	padding: 0 1em;
	color: #fff;
	border-right: 1px solid #fff;
	transition: .2s all ease-in;
}
nav.f-nav li a:hover{ color: #2c4d7a; }
nav.f-nav li:last-child a{ border: none; }
.copyright{
	text-align: center;
	clear:both;
}



@media screen and (max-width: 1540px) {
	.f-logo-first{top: 55px;}
}
@media screen and (max-width: 1200px) {
	footer .is-inner{
		width: 90%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {
	footer{	padding: 0;}
	.f-logo-first{
		display:block;
		right: 0;
		left: 0;
		margin: 0 auto;
	}
	.f-logo-sns{
		top: 100px;
		right: 0;
		left: 0;
		justify-content: center;
	}
	#f_global{
		display: block;
		margin: 140px auto 30px;
	}
	#f_global > ul{width: 100%;}

	.logo-copy{
		display:block;
		vertical-align: middle;
		font-size: 123%;
		font-weight: bold;
		padding: .5em .5em;
		line-height:1.5;
	}
	.f-logo-second{
		display:block;
		vertical-align: middle;
		width: 157px;
		margin: 0 auto;
	}
	.f-identity{
		padding-bottom: 5%;
		margin-bottom: 4%;
	}
	.f-logo-group li{
		width:49.5%;
		display:inline-block;
		padding:0 3%;
		margin-bottom:10%;
		box-sizing:border-box;
		border-right:none;
	}
	.f-logo-group li:nth-child(even){ border-right:none; }
	.f-logo-group li:first-child{ width:100%; }
	.f-logo-group li:first-child img{ max-width:68%; }
	.f-logo-group li:nth-child(2) img{
		max-width:42%;
		padding-top:8px;
	}
		.f-logo-group li:last-child img{
		max-width:70%;
	} 
}

/* 暗号資産情報 トップボタン 250130*/
#cryptoasset_pop {width: 300px;}
#cryptoasset_pop .news_area {
	position: fixed;
	left: 3rem;
	bottom: 3rem;
	text-align: left;
	z-index: 9999; 
	background:#fff;
	width:600px;
	padding:1rem;
	border:solid 3px #2c4d7a;
	border-radius:2rem;
	box-shadow:2px 2px 6px rgba(0,0,0,.4);
}
#cryptoasset_pop .news_area:hover {opacity: .8;}
#cryptoasset_pop .news_area .news_area_in{margin-left:70px;}
.visual {width:100%;}
.visual .slick-list{overflow:hidden;}
.visual.slick-dotted.slick-slider{margin:0;line-height:1;}
.visual .slick-dots li,	.visual .slick-dots li button,.visual .slick-dots li button:before{width:14px;height:14px;line-height:1;}
.visual .slick-dots{top:calc(50% - 8px);left:-70px;width:60px;height:14px;line-height:1;}
.visual .slick-dots li button:before{font-family:system-ui,sans-serif;content:"●";font-size:8px;line-height:1;}
.visual .slick-dots li{margin:0 1px;line-height:1;}
.visual .v_in a{display:flex;align-items: center;}
.visual .v_in a .v_in_date{width:4rem;color:#aaa;text-align:center;font-weight:bold;line-height:1.2;}
.visual .v_in a .v_in_date span{color:#f04;font-weight:bold;border:2px solid #f04;padding:.025rem .4rem;}
.visual .v_in a .v_in_text{width:calc(100% - 4rem);height:2.8em;line-height:1.4;color:#333;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;word-break: break-all;padding:0 .5em;}
@media screen and (max-width: 768px){
	#cryptoasset_pop .news_area {
		bottom: 2rem;
		padding:.75rem;
	}
	.open #cryptoasset_pop .news_area { display: none;}
	#cryptoasset_pop .news_area .news_area_in{margin-left:45px;}
	#cryptoasset_pop .news_area{width:calc(100% - 2rem);left:1rem;}
	.visual .slick-dots{top:calc(50% - 8px);left:-48px;width:42px;height:10px;line-height:1;}
	.visual .slick-dots li{margin:0 1px;}
	.visual .slick-dots li,	.visual .slick-dots li button,.visual .slick-dots li button:before{width:10px;height:10px;line-height:1;}
	.visual .slick-dots li button:before{line-height:1;font-size:6px;}
	.visual .v_in a .v_in_date{width:3rem;font-size:.75rem;}
	.visual .v_in a .v_in_text{width:calc(100% - 3rem);}
}