/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	/* font-family: sans-serif; */
	font-family: Meiryo;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
	padding-top:78px;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

a.ext {
	background:url(../images/icon-external.png) no-repeat left;
	padding-left:1.3em;
}
a.ext-r {
	background:url(../images/icon-external.png) no-repeat right;
	padding-right:1.3em;
}

/* janome added */
span.ext-intxt::after, p.ext-intxt::after {
	display: inline-block;
	content: "";
	width: 13px;
	height: 13px;
	background:url(../images/icon-external.png) no-repeat;
	background-repeat: no-repeat;
	background-size: contain;
	margin-left: 5px;
	margin-top: 3px;
}


a.glb {
	background:url(../images/icon-global-s.png) no-repeat left;
	padding-left:1.3em;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

h2 {
	color:#cc2c2f;
	font-size:2em;
	text-align:center;
}

h2 span {
	color:#000;
	font-size:.7em;
}

h2.white {
	color:#fff;
}

h2.white span {
	color:#fff;
	font-size:.6em;
}

h2:first-child {
	margin-top:0;
}

h3 {
    padding:.5em;
    border-left:4px solid #cc2c2f;
    /* background:#d5d5d5; original*/
    background:#ececec;	/*janome added 20220809*/
}

h3.no-bg {
    background:none;
}


mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

:focus {
    outline: none;
}

.btn-circle {
	border:1px solid #333;
	border-radius:15px;
	padding:.5em 5em;
	text-decoration:none;
}

.btn-circle-white {
	border:1px solid #fff;
	color:#fff;
}

.gray { background:#e3e3e3; }
.light-gray { background:#f7f7f7; }/*janome added 2022.12*/
.pink { background:#fcdfe0; }

.va-m { vertical-align:middle !important; }
.va-n { vertical-align:unset !important; }

.fs-sl { font-size:smaller !important; }
.fl12 { font-size:1.2em !important; }
.fl15 { font-size:1.5em !important; }
.fl25 { font-size:2.5em !important; }

.mt0 { margin-top:0 !important; }
.mt1 { margin-top:1em !important; }
	@media print, screen and (min-width: 768px) {
	.mt1-pc { margin-top:1em !important; }
	}

.mt2 { margin-top:2em !important; }
	@media print, screen and (min-width: 768px) {
	.mt2-pc { margin-top:2em !important; }
	}

.mt3 { margin-top:3em !important; }
.mt4 { margin-top:4em !important; }
.mt5 { margin-top:5em !important; }
.mb0 { margin-bottom:0 !important; }
.mb1 { margin-bottom:1em !important; }
.mb2 { margin-bottom:2em !important; }
.mb3 { margin-bottom:3em !important; }
.mb4 { margin-bottom:4em !important; }
.mb5 { margin-bottom:5em !important; }

.pt0 { padding-top:0 !important; }
.pt1 { padding-top:1em !important; }
.pt2 { padding-top:2em !important; }
.pt3 { padding-top:3em !important; }
.pt4 { padding-top:4em !important; }
.pt5 { padding-top:5em !important; }

.pb0 { padding-bottom:0 !important; }
.pb1 { padding-bottom:1em !important; }
.pb2 { padding-bottom:2em !important; }
.pb3 { padding-bottom:3em !important; }
.pb4 { padding-bottom:4em !important; }
.pb5 { padding-bottom:5em !important; }

.pl0 { padding-left:0 !important; }
.pl1 { padding-left:1em !important; }
@media print, screen and (min-width: 768px) {
	.pl1-pc { padding-left:1em !important; }
}

.pl2 { padding-left:2em !important; }
.pl3 { padding-left:3em !important; }
.pl4 { padding-left:4em !important; }
.pl5 { padding-left:5em !important; }
.pl6 { padding-left:6em !important; }
.pl7 { padding-left:7em !important; }

.pr0 { padding-right:0 !important; }
.pr1 { padding-right:1em !important; }
.pr2 { padding-right:2em !important; }
.pr3 { padding-right:3em !important; }
.pr4 { padding-right:4em !important; }
.pr5 { padding-right:5em !important; }

.left{
	text-align: left;
}
.right{
	text-align: right;
}

.no-deco{
	background:none;
	border: none;
	padding: 0px;
	margin: 0px;
}

@media print, screen and (max-width: 767px) {
	body {
		padding-top:60px;
	}
	
	iframe {
		width:100%;
	}
}

.border-gr{
	border: 1px solid #cccc;
}


/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #333333;
	font-size: 14px;
	line-height: 1.8;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul {
	list-style: disc;
	padding-left:0;
}

ol {
	list-style: decimal;
	padding-left:0;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Block
--------------------------------------------------------------*/
.contents {
	width:74%;
	float:right;
	padding-bottom:3em;
}

.block {
	/* padding:2em 0 4em; original*/
	padding:2em 0 2em;	/*janome added 20220810*/
}

.labo {
	background:url(../images/bg-labo.png) center no-repeat;
	background-size:cover;
}

@media print, screen and (max-width: 959px) {
	.contents {
		width:100%;
		float:none;
	}
	
	.block {
		text-align:center;
	}
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
header {
	padding:1em 0;
	position:fixed;
	z-index:9999;
	background:#fff;
	width:100%;
	height:88px;		/* height:78px; before*/
	top:0;
	left:0;
	box-sizing:border-box;
}
	@media print, screen and (max-width: 767px) {
		header {
			padding:0;
			height:79px;	/*height:60px;*/
		}
	}

/* changed owl.carousel.min.css 2022.12.27 added*/
	.owl-carousel.owl-loaded{
	display:block;
	margin-top:10px;
	}
	@media print, screen and (max-width: 767px) {
		.owl-carousel.owl-loaded{
		display:block;
		margin-top:21px;
		}
	}

header .container {
	padding:0;
}

header .site-branding {
	display:inline-flex;
	overflow:hidden;
}

header .site-branding h1 {
	margin:0;
}

header .site-branding h1 a {
	display:block;
}

header .site-branding h1 img {
	vertical-align:top;		/*janome added 20220810*/	/* vertical-align:middle; original*/
	padding-top: 4px;			/*janome added 20220810*/
}

header .site-logo h1 a .corpnm{
	position: absolute;
	top: 38px;	
	left: 23px; 
	margin: 0;
	font-size: 13.5px; 
}
	@media print, screen and (max-width: 767px) {
		header .site-logo h1 {
			margin:0;
			padding-left:.3em;
			padding-top:.3em;
		}
		header .site-logo h1 a .corpnm{
			top: 48px;	/*top: 37px;*/
			left: 35px;
			font-size: 13px; 
		}
	}

header #cse-search-box {
  position: relative;
}

header .search {
	display:inline-block;
	position:absolute;
	right:0;
	width:30%;
}
	@media print, screen and (max-width: 767px) {
		header .search {
			position:relative;
			width:99%;
		}
	}

header .searchfield,
.menu ul li .searchfield {
  font-size: 14px;
  width: 100%;
  width:70%;
  margin: 3px;
  padding: 3px 3px 3px 35px;
  border: solid 1px #6d6d6d !important;
  border-radius: 15px !important;
  background-color: #fff;
}

.menu ul li .searchfield {
  padding: 3px 3px 3px 40px;
}
	@media print, screen and (max-width: 959px) {
		.menu ul li .searchfield {
			width:100%;
		}
	}
	@media print, screen and (max-width: 480px) {
		.menu ul li .searchfield {
			padding: 3px 3px 3px 35px;
		}
	}

.menu ul li .searchsubmit {
  font-size: 1.4em;
  position: absolute;
  top: 20%;
  left:19%;
  padding: 0;
  cursor: pointer;
  color: #df0623;
  border: none;
  background: transparent;
  transform: scaleX(-1);
}
 
.menu ul li .searchsubmit {
	left:3%;
}

.searchsubmit:hover {
  opacity: .6;
}

.menu ul li .search {
	display:none;
}
	@media print, screen and (max-width: 767px) {
		.menu ul li .search {
			display:block;
			top:0;
		}
	}

/*========= 検索窓を開くためのボタン設定 ===========*/

.search-btn {
  position: absolute;
  top:.4em;
  right:0;
  background:url(../images/icon-search.png) no-repeat 15px center;
  width:50px;
  height:50px;
  cursor: pointer;/*カーソルを指マークに*/
}
	@media print, screen and (max-width: 959px) {
		.search-btn {
			display:none;
		}
	}

.search-btn.btnactive{
  background:url(../images/icon-close.png) no-repeat 15px center;
}

#search-wrap{
  position:absolute;
  top:150px;
  right:20px;
  z-index: -1;
  opacity: 0;
  width:0;
  transition: all 0.4s;
  border-radius: 5px;
}

#search-wrap.formactive{
  opacity: 1;
  z-index: 3;
  width:280px;
  padding:.5em;
  top:60px;
  right:0;
}

#search-wrap #cse-search-box{
  display: none;
}

#search-wrap.formactive #cse-search-box{
  display: block;
}

#search-wrap input{
  -webkit-appearance:none;
  outline: none;
  cursor: pointer;
  color: #666;
}

 #search-wrap input[type="text"] {
  width: 100%;
  transition: all 0.5s;
  letter-spacing: 0.05em;
  height:46px;
  padding: 10px;
  border: solid 1px #6d6d6d !important;
  border-radius: 25px !important;  
}

 #search-wrap input[type="text"]:focus {
  background:#eee;
}

 #search-wrap input[type="submit"] {
  position: absolute;
  top:1em;
  right:1em;
  background:url(../images/icon-search.png) no-repeat right;
  background-size: 20px 20px;
  width:20px;
  height: 20px;
  border:none;
}



/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer {
	background: #dedede;
	display: block;
	overflow: hidden;
	/* padding: 50px 40px;	original */
	padding: 20px 40px;/* janome added 20220810*/
	margin-top: 30px;
	border-top:1px solid #cc2c2f;
}
footer.entry-footer {
    background: transparent;
    padding: 5px;
    display: block;
}

.footer {
	display: block;
	overflow: hidden;
}

.footer .widget-title {
    margin-bottom: 25px;
}

footer .brand {
	text-align:center;
	margin:1.5em 0;
}

footer .brand p {
	font-size:13.5px;	/*font-size:125%;*/
	margin: 4px;	/*margin:0; before*/
	padding: 5px;
}

footer ul.footer-nav {
	padding-left:0;
	list-style:none;
}

footer ul.footer-nav li {
	/* padding:.2em 0 .2em .5em; original*/
	padding:0 0 0 .5em;
}

footer ul.footer-nav li:first-child {
	border-bottom:1px solid #787878;
	padding:0 0 .5em 0;
	font-size:150%;
	list-style:none;
}

footer ul.footer-nav li:first-child:after {
	display:none;
}

footer ul.footer-nav li.outline {
	padding-left:0;
}

footer ul.footer-nav li a {
	text-decoration:none;
}

footer ul.footer-nav li.line2 {
	display:flex;
	margin:0;
	padding:0;
}

footer ul.footer-nav li.line2 ul.left,
footer ul.footer-nav li.line2 ul.right {
	float:left;
	list-style:none;
	margin-left:0;
	padding-left:0;
	line-height:1.6;
}

footer ul.footer-nav li.line2 ul.left {
	margin-right:1em;
}

footer ul.footer-nav li.line2 ul.left li:first-child,
footer ul.footer-nav li.line2 ul.right li:first-child {
	border:none;
	font-size:100%;
	padding:.2em 0 .2em .5em;
	margin-top:0;
}

footer .footer-sub-nav ul {
	padding-left:0;
}

footer .footer-sub-nav ul li {
	list-style:none;
	display:inline-block;
	padding-left:1em;
}

footer .footer-sub-nav a {
	text-decoration:none;
}

ul.disc li {
  position: relative;
}

ul.disc li::after,
footer ul.footer-nav li.line2 ul.left li:first-child::after,
footer ul.footer-nav li.line2 ul.right li:first-child::after {
  display: block;
  content: '';
  position: absolute;
  top: .8em;
  left: 0;
  width: 4px;
  height: 4px;
  background-color: #333;
  border-radius: 100%;
}

.site-info {
    display: block;
    overflow: hidden;
    padding: 10px;
    text-align: center;
}

.go-to-top {
  display: block;
  position: fixed;
  left: auto;
  bottom: 1.5rem;
  right: auto;
  margin-left: 1020px;
  color: rgba(223,6,35,0.9);
  font-size: 2.5rem;
  cursor: pointer;
  z-index:9999;
}

footer #products-news {
	border:1px solid #787878;
	border-radius:.5em;
	padding:.5em;
	font-size:85%;
	text-decoration:none;
	text-align:center;
	margin-top:13em;
}

footer #products-news a {
	text-decoration:none;
}

@media print, screen and (max-width: 767px) {
	footer ul.footer-nav li.line2 {
		display:block;
	}
	
	footer .footer-sub-nav ul {
		text-align:left;
	}
	
	footer .footer-sub-nav ul li {
		display:block;
		padding-left:0;
	}

    .go-to-top {
		right:10px;
	}
	
	footer #products-news {
	    margin-top:1em;		
	}
}

/* ========================================================
サイドバー
=========================================================*/ 
.sidebar {
	width:23%;
	float:left;
	margin-bottom:5em;	
}
	@media print, screen and (max-width: 959px) {
		.sidebar {
			width:100%;
			float:none;
		}
	}

.sidebar ul {
	margin:0;
}

.sidebar ul li {
	list-style:none;
	margin:0;
	background:#f2f2f2;
	border-bottom:1px solid #d5d5d5;
}

.sidebar ul li:first-child {
	background:#fcdfe0;
	border-top:3px solid #cf383b;
	font-size:1.3em;
}

.sidebar ul li a,
.sidebar ul.search li span {
	padding:1em .5em 1em 1.5em;
	text-decoration:none;
	display:block;
}

.sidebar ul li:first-child a {
	padding:1em .5em 1em 1.2em;
}

.sidebar ul li.current,
.sidebar ul li:hover,
body.ir_financial_archives .sidebar ul li:nth-child(5),
body.presentation_archives .sidebar ul li:nth-child(6),
body.ir_negotiable_archives .sidebar ul li:nth-child(7),
body.ir_report_archives .sidebar ul li:nth-child(8),
body.management_plan_archives .sidebar ul li:nth-child(9),
body.ir_janome_report_archives .sidebar ul li:nth-child(11),
body.ir_meeting_archives .sidebar ul li:nth-child(13) {
	background:#d5d5d5;
}

.sidebar ul.search li.current {
	background:#fcdfe0;
}

.sidebar ul li:first-child a:hover {
	background:#fcdfe0;
}

.sidebar ul li.sub a {
	padding:.5em 0 .5em 2.5em;
	font-size:.9em;
}

.search_item {
    display: inline-block;
    padding: 3px;
    cursor: pointer;
}

.search_item.is-active {
    background: #d5d5d5;
}

.is-hide {
    display: none;
}

.bnr a {
	border:1px solid #d5d5d5;
	margin:1em 0;
	padding:1em;
	display:block;
	text-decoration:none;
}

.bnr i {
	color:#cc2c2f;
}


.bnr-img a{
	border:1px solid #d5d5d5;
	display:block;
	text-decoration:none;
}
	@media print, screen and (max-width: 500px) {
	.bnr-img img{
	/* width:100%; */
	}
	}

/* ========================================================
パンくず
=========================================================*/ 
.breadcrumb {
  margin: 0;
  padding: 1em 0;
  list-style: none;
}

.breadcrumb li {
  display: inline;
  list-style: none;
  font-weight: bold;
}

.breadcrumb li:after {
  font-family: 'Font Awesome 5 Free';
  content: '\f0da';
  padding: 0 0.2em;
  color: #cc2c2f;
}

.breadcrumb li:last-child:after {
  content: '';
}

.breadcrumb li a {
  text-decoration: none;
  color: #737373;
}

.breadcrumb li:last-child a {
  color: #cc2c2f;
}

.breadcrumb li a:hover {
  text-decoration: underline;
}

/* ========================================================
ページトップに戻るボタン
=========================================================*/
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #cc2c2f;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -20px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* ========================================================
News
=========================================================*/
.corner-box {
	border:1px solid #6d6d6d;
	border-radius:15px;
	padding:1em;
}

.corner-box-dotted {					/* janome added 2022.07.15*/
	border:1px dotted #6d6d6d;
	border-radius: 10px;
	padding: 0px 20px 5px; 
}


#notice ul li {
	list-style:none;
	color: #555 ;	/*2022.7.19 janome added*/
	font-size:1.2em;
	/* border-bottom:1px solid #6d6d6d; original*/
	border-bottom:1px solid #ccc;	/*2022.7.19 janome added*/
	text-align:left;
}

#notice ul li a {
	/* color:#df0623; original*/
	color: #555 ;	/*2022.7.19 janome added*/
	text-decoration:none;
}


.news-box {
	text-align:left;
}

.news-box h3 {
	border-bottom:1px dashed #6d6d6d;
	border-left:none;
	padding:.5em 0;
	background:none;
	margin-top: -10px;	/*20220810 janome added*/
	font-size: 1.4em;	/*20220810 janome added*/
	position:relative;	/*20220819 janome added*/
}
/*20220819 janome changed*/
.news-box h3 span {
	position:absolute;
	right:2%;
	bottom: 10%;
	font-size: 0.8em;
}
		/* original
		.news-box h3 span {
			position:relative;
			left:21em;
		}
			@media print, screen and (max-width: 767px) {
				.news-box h3 span {
					position:absolute;
					left:unset;
					right:2%;
				}
			} */

.news-box ul li {
	border-bottom:1px solid #6d6d6d;
	padding:.5em 0;
	list-style:none;
	color:#6d6d6d;
}

.news-box ul li span {
	border:1px solid #6d6d6d;	
	border-radius:20px;
	padding:.1em 1em;
}

.news-box h3 span a,
.news-box ul li a {
	text-decoration:none;
}

.tab-area{
	overflow:hidden;
	display:flex;
	flex-wrap: wrap;	/* janome added 2022.06.27*/
}
	@media print, screen and (max-width: 767px) {
	.tab-area{
		display:block;
	}
	}

.tab-area li{
  list-style: none;
  display: inline-block;
  margin: 0 1em 0 0;
  margin: 0 1em 0 0;
  padding: .5em;
  text-align:center;
  width:30%;
  border:1px solid #cc2c2f;
  border-radius:15px;
  display:block;
}
	@media print, screen and (max-width: 767px) {
	.tab-area li {
		width:100%;
		margin-bottom:1em;
	}
	}

/* janome added 2022.06.27-------------*/
.tab-area li:nth-child(n+4){
  margin: 1em 1em 0 0  !important;
}
/* ------------------------------------*/

	@media print, screen and (max-width: 767px) {
		.tab-area li:last-child{
		margin-bottom:0 !important;
		}
	}

.tab-area li.select{
	background-color:#fcdfe0; 
	background-image:none; 
	color:#333333;
}

.tab-area li:hover {
	cursor:pointer;
}


/* ========================================================
トップページ　スライド
=========================================================*/
.owl-theme .owl-dots .owl-dot span {
	background:#fff;
	border:1px solid #df0926;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
	background:#f18392;
}


/* ========================================================
トップページ　Link スライド
=========================================================*/
#link-carousel .owl-dots {
	display:none;
}

#link-carousel a {
	text-decoration:none;
	text-align:center;
	display:block;
}

#link-carousel .owl-nav .owl-prev,
#link-carousel .owl-nav .owl-next {
	@include fs(32);
	position: absolute;
	top: 0;
	margin: 0;
	padding: 130px 20px;
	transform: scaleX(0.5);

	@include max(640) {
		padding: 0 10px;
	}
}

#link-carousel .owl-nav .owl-prev {
	left: -3em;
}
#link-carousel .owl-nav .owl-next {
	right: -3em;
}

#link-carousel .owl-nav i {
	font-size:2.5em;
	color:#6d6d6d;
}

.owl-theme .owl-nav [class*=owl-] {
	background:#d9d9d9;
}

.owl-theme .owl-nav [class*=owl-]:hover {
	background:#d9d9d9;
	opacity:.9;
}

@media print, screen and (max-width: 767px) {
	#link-carousel .owl-nav .owl-prev,
	#link-carousel .owl-nav .owl-next {
		position: absolute;
		top:unset;
		bottom:0;
   	    padding: 0 10px;
	}
	#link-carousel .owl-nav .owl-prev {
		left: 0;
	}
	#link-carousel .owl-nav .owl-next {
		right: 0;
	}
	#link-carousel .owl-nav i {
		font-size:unset;
	}
}

/* ========================================================
下層ページ
=========================================================*/
.eyecatch {
	margin:1em 0 2em;
}

.copy {
	font-size:1.5em;
	font-weight:900;
}

.gray-box {
	border:1px solid #c0bdbd;
	padding:1em;
	margin:2em 0;
}

.red-box {
	border:1px solid #cc2c2f;
	padding:1em;
	margin:2em 0;
}

.radius-box {
	border-radius:5px;
	padding:.1em;
}

#map {
  width: 70%;
  height: 300px;
  overflow: hidden;
}

#map iframe {
  width: 100%;
  height: 645px;
  margin-top: -170px;
}

.list-line-top {
	border-top:1px solid #d5d5d5;
	padding-top:1em;
}

.list-line-btm {
	border-bottom:1px solid #d5d5d5;
	margin-bottom:1em;
}

.left-line-red {
	border-left:1px solid #cc2c2f;
	padding-left:1em;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

table caption.lt {
  caption-side: top;
  text-align: left;
}

/* janome added 2022.6.27 -----*/
table caption.rt {
  caption-side: top;
  text-align: right;
}
/* ----------------------------*/

table caption.rb {
  caption-side: bottom;
  text-align: right;
}

table caption.lb {
  caption-side: bottom;
  text-align: left;
}

table th,
table td {
  font-size: 0.9rem;
  padding: 0.5em 1em;
  border: 1px solid #c6c6c6;
  vertical-align:middle;
}

/* janome added 2022.6.27 ------------ */
/* for narrow space table*/
table.jm-tbl-nsp th ,
table.jm-tbl-nsp td {
  font-size: 0.9rem;
  padding: 0.3em;
  border: 1px solid #c6c6c6;
  vertical-align:middle;
}

/* font size smaller */
table.jm-tbl-nsp.f-middle th ,
table.jm-tbl-nsp.f-middle td {
font-size: 0.8rem;
}
/* //------------------------------ */

table th.gray {
  background-color: #d5d5d5;
}

table th.pink {
  background-color: #fcdfe0;
}

table.no-border,
table.no-border th,
table.no-border td {
	border:none;
}

table th.gray-border-btm,
table td.gray-border-btm {
	border-bottom: 1px solid #d5d5d5;
}


table colgroup col.w30-40 { width:30%; }
table colgroup col.w35-40 { width:35%; }
table colgroup col.w70-60 { width:70%; }

ul.l-disc {
  padding-left: 1.3em;
}

ul.l-disc li {
  position: relative;
  list-style-position:outside;
  list-style:none;
}

ul.l-disc li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1.2em;
  width: 12px;
  height: 12px;
  background-color: #737373;
  border-radius: 100%;
}

ol.number li {
  list-style: none;
  padding-left: 1em;
  text-indent: -1em;	
}

.pdf-front {
	background:url(../images/icon-pdf.png) left no-repeat;
	padding:1em 0 1em 3em;
	text-decoration:none;
}

.pdf-back {
	background:url(../images/icon-pdf.png) right no-repeat;
	padding:1em 3em 1em 0;
	text-decoration:none;
}

.zip-back {
	background:url(../images/icon-zip.png) right no-repeat;
	padding:1em 3em 1em 0;
	text-decoration:none;
}

.pdf-front:hover,
.pdf-back:hover,
.zip-back:hover {
	text-decoration:underline;
}


a.red-radius-btn {
	background:#cc2c2f;
	color:#fff;
	padding:.5em 2em;
	border-radius:20px;
	text-decoration:none;
	display:block;
	text-align:center;
}

a.red-radius-btn2 {
	border:1px solid #cc2c2f;
	padding:.5em 2em;
	border-radius:20px;
	text-decoration:none;
	display:block;
	text-align:center;
}

figcaption.l-disc {
  position: relative;
  padding-left:1em;
}

figcaption.l-disc::after {
  display: block;
  content: '';
  position: absolute;
  top: .6em;
  left: 0;
  width: 12px;
  height: 12px;
  background-color: #000;
  border-radius: 100%;
}

.menu__item {
  color: #fff;
  display: block;
  margin-bottom: 1px;
  position: relative;
}
.menu__item__link {
  background: #cc2c2f;
  cursor: pointer;
  color: #fff;
  display: block;
  padding: .5em;
  text-decoration:none;
  text-align:center;
  border-radius:20px;
  margin:0 auto;
}
.menu__item__link-w30 {
	width:30%;
}

.submenu {
  background: #fff;
  display: none;
  margin-left:0;
}
.submenu__item {
  color: #333;
  list-style:none;
}

@media print, screen and (max-width: 767px) {
	#map { width: 100%; }	
	table colgroup col.w30-40 { width:40%; }
	table colgroup col.w35-40 { width:40%; }
	table colgroup col.w70-60 { width:60%; }
	.menu__item__link-w30 { width:100%; }
}


/* ========================================================
ジャノメの歴史
=========================================================*/
#tabindex ul {
  display: flex;
}
	@media print, screen and (max-width: 767px) {
	#tabindex ul {
		display:block;
	}
	}

#tabindex ul li {
  list-style: none;
  display: inline-block;
  margin: 0 1em 0 0;
  text-align:center;
  width:30%;
}
	@media print, screen and (max-width: 767px) {
	#tabindex ul li {
		display:block;
		width:100%;
		margin-bottom:1em;
	}
	}

#tabindex ul li span {
  border:1px solid #cc2c2f;
  border-radius:15px;
  display:block;
  padding: .5em;
}

#tabindex ul li span:hover {
	background:#fcdfe0;
	cursor:pointer;
}

#tabindex ul li span.current-tab {
	background:#fcdfe0;
}

#tabcontents span.row {
	display:block;
}

/* janome added 2022.06.27 --------------*/
#tabindex ul li span.nospanstyle {
  border:0px;
  display:inline;
  padding: 0;
}
#tabindex ul li span.nospanstyle:hover {
	background:none;
	cursor:pointer;
}

#tabindex ul li span.nospanstyle.current-tab {
	background:none;
}

#tabcontents span.nospanstyle.row {
	display:inline;
}
/* // --------------------------------- */


#tabcontents p.year {
	font-size:1.5em;
	line-height:1.2;
	text-align:right;
	line-height:1;
}
	@media print, screen and (max-width: 767px) {
	#tabcontents p.year {
		margin-bottom:0;
		text-align:left;		
	}
	}

#tabcontents p.year span {
	font-size:.7em;
}

.content-tab .col:last-child {
	margin-bottom:0;
}
	@media print, screen and (max-width: 767px) {
	.content-tab .col:last-child {
		margin-bottom:2em;
	}
	}


/* ========================================================
IR情報
=========================================================*/
ul.ir-news-line3 li:nth-child(n + 5) {
	display:none;
}

#ir .news-box h3 span {
	position:absolute;
	left:unset;
	right:0;
}


/* ========================================================
ひとめでわかるジャノメ
=========================================================*/
#lp-glance .container-400 { width:400px; }
#lp-glance .container-600 { width:600px; }
#lp-glance .container-645 { width:645px; }
#lp-glance .container-765 { width:765px; }
#lp-glance .container-845 { width:845px; }
#lp-glance .container-990 { width:990px; }
	@media print, screen and (max-width: 899px) {
		#lp-glance .container-400,
		#lp-glance .container-600,
		#lp-glance .container-645,
		#lp-glance .container-765,
		#lp-glance .container-845,
		#lp-glance .container-990,
		#lp-glance h3.heading-belt-pink {
			width:100%;
		}
	}

#lp-glance .eyecatch {
	background:url(../company/glance/images/bg-eyecatch.png) no-repeat center bottom;
	height:420px;
	margin:3em 0 0;
}

#lp-glance .eyecatch h2 {
	color:#cc2c2f;
	font-family: "UDDigiKyokasho B";
	font-size:2.3rem;
}

#lp-glance h3 {
	color:#cc2c2f;
	background:none;
	border-left:none;
	font-size:1.2rem;
}

#lp-glance .block-gray {
	background:#f2f2f2;
}

#lp-glance .block-pink {
	background:#fbeeee;
}

#lp-glance h3.heading {
	border-bottom:3px solid #cc2c2f;
	font-size:1.6rem;
	display: inline-block;
	padding-bottom:0;
}

#lp-glance h3.heading-sub {
	font-size:1.3rem;
}

#lp-glance h3.heading-belt-pink {
	border-radius:25px;
	background: linear-gradient(90deg, rgba(255, 233, 233, 1), rgba(247, 205, 205, 1));
	color:#333;
	width:500px;
	margin:0 auto;
	padding:.1em;
}
	@media print, screen and (max-width: 899px) {
		#lp-glance h3.heading-belt-pink {
			width:100%;
		}
	}

#lp-glance p {
	font-size:1rem;
}

#lp-glance .font-red {
	color:#cc2c2f;
}

#lp-glance .circle_number {
	width: 35px;
	height: 35px;
	padding-top: 0;
	border-radius: 50%;
	text-align: center;
	box-sizing: border-box;
	margin:0 auto;
	font-size:1.2rem;
	background:#ffe9e9;
	color:#cc2c2f;
  }

#lp-glance .caption {
	margin-left:.5em;
	margin-bottom:0;
}

#lp-glance a.movie {
	background:url(../company/glance/images/glance01-1.png) center no-repeat;
	width:845px;
	height:477px;
	display:block;
}

#lp-glance a.movie:hover { background:url(../company/glance/images/glance01-2.png) center no-repeat; }

#lp-glance a.diecast {
	background:url(../company/glance/images/glance11-1.png) center no-repeat;
	width:397px;
	height:214px;
	display:block;
}

#lp-glance a.diecast:hover {
	background:url(../company/glance/images/glance11-2.png) center no-repeat;
}

#lp-glance a.diecast2 {
	background:url(../company/glance/images/glance12-1.png) center no-repeat;
	width:397px;
	height:214px;
	display:block;
}

#lp-glance a.diecast2:hover {
	background:url(../company/glance/images/glance12-2.png) center no-repeat;
}

#lp-glance a.space-1 { background:url(../company/glance/images/glance06-1-1.png) center no-repeat; }
#lp-glance a.space-2 { background:url(../company/glance/images/glance06-2-1.png) center no-repeat; }
#lp-glance a.space-3 { background:url(../company/glance/images/glance06-3-1.png) center no-repeat; }
#lp-glance a.space-4 { background:url(../company/glance/images/glance06-4-1.png) center no-repeat; }
#lp-glance a.space-5 { background:url(../company/glance/images/glance06-5-1.png) center no-repeat; }
#lp-glance a.space-6 { background:url(../company/glance/images/glance06-6-1.png) center no-repeat; }

#lp-glance a.space-1:hover { background:url(../company/glance/images/glance06-1-2.png) center no-repeat; }
#lp-glance a.space-2:hover { background:url(../company/glance/images/glance06-2-2.png) center no-repeat; }
#lp-glance a.space-3:hover { background:url(../company/glance/images/glance06-3-2.png) center no-repeat; }
#lp-glance a.space-4:hover { background:url(../company/glance/images/glance06-4-2.png) center no-repeat; }
#lp-glance a.space-5:hover { background:url(../company/glance/images/glance06-5-2.png) center no-repeat; }
#lp-glance a.space-6:hover { background:url(../company/glance/images/glance06-6-2.png) center no-repeat; }

#lp-glance a.space,
#lp-glance a.space:hover {
	width:330px;
	height:330px;
	display:block;
	background-size:contain;
}

.wldnew-content {
	border-radius:15px;
	margin-top:-1.5em;
	padding:1em;
	height:410px;
	background:#fbe7d5;
}

.wldnew-content h3 {
	margin:0;
	padding:1em 0 0;
}

#lp-glance .flex-block {
	display:flex;
	flex-wrap:nowrap;
}

#lp-glance .flex-block p {
	white-space:nowrap;
}

#lp-glance .flex-block .item-left {
	margin:1em 0 0 1em;
}

#lp-glance .flex-block .item-right {
	margin:1em 0 0 3em;
}

#lp-glance .flex-block-wrap {
	flex-wrap:wrap;
}

#lp-glance a.red-radius-btn2 {
	font-size:.9rem;
}

	@media print, screen and (max-width: 767px) {
		#lp-glance .eyecatch {
			background-size:contain;
			height:355px;
		}

		#lp-glance .eyecatch h2 {
			font-size:1.8rem;
		}

		#lp-glance .eyecatch h3 {
			text-align:left;
		}

		#lp-glance .block {
			text-align:unset;
		}
		
		#lp-glance .text-center p {
			text-align:left;
		}

		#lp-glance h3.heading {
			font-size:1.1rem;
		}

		#lp-glance h3.heading-sub {
			font-size:1.1rem;
		}
		
		#lp-glance h3.heading-belt-pink {
			font-size:1rem;
		}

		#lp-glance a.movie,
		#lp-glance a.movie:hover {
			width:auto;
			height:198px;
			background-size:contain;
		}

		#lp-glance a.diecast {
			width:auto;
			background-size:contain;
		}
		
		
		#lp-glance .flex-block p.mt2,
		#lp-glance .flex-block p.mt3,
		#lp-glance .flex-block p.mt4 {
			margin-top:0 !important;
		}
		
		#lp-glance .flex-block {
			display:block;
			text-align:center;
		}
		
		#lp-glance .flex-block p {
			display:inline-block;
			width:49%;
		}

		#lp-glance .flex-block-wrap p {
			display:block;
			margin:0;
			width:100%;
		}
		
		#lp-glance .flex-block .item-left,
		#lp-glance .flex-block .item-right {
			margin:1em 0 0 0;
		}

		#lp-glance a.space,
		#lp-glance a.space:hover {
			width:100%;
		}	
	}

/* お問い合わせTOP */
.contact-h3-main{
	font-size:1.4em;
	line-height: 1.5;
	margin-top: 20px;
}
.contact-h3-main span{
	font-size: 0.7em;
}

.contact-h3-sub{
	margin-top: 20px;
	line-height: 1;
}
.contact-h3-sub2{
	margin: 0px;
	line-height: 1;
}

.contact-h3-sub_inner{
	margin: 0;
	margin-left: 10px; 
}
.contact-maininfo-tit{
	font-size: 1.2em;
}

.pr5px{	padding-right:5px; }
.pl10px{	padding-left: 10px; }
.ml10px{	margin-left: 10px; }
.pl20px{	padding-left: 20px; }
.pt20px{	padding-top: 20px; }
.mg0{	margin: 0; }
.mt0{	margin-top: 0px; }
.mb0{	margin-bottom: 0px; }
.mt40px{	margin-top: 40px; }

/* For announce --------------------- */
.announce-iq{
	line-height: 1.5em;
	margin: 2em 0;
	padding: 0.5em 1em;
	border: 1px dotted #d90d1bec;
	border-radius: 5px;
 }

.announce-iq>p{
margin: 0;
padding-bottom: 0.5em;
}

.announce-iq_sub{
	line-height: 1.5em;
	padding-left: 1em;
	text-indent: -1em; 
 }


/* .announce-iq{
	line-height: 1.5em;
	margin: 2em 0;
	padding: 0 1em;
	border: 1px dotted #d90d1bec;
	border-radius: 5px;
 }
.announce-iq2{
	line-height: 1.5em;
	margin: 1em 0;
	padding: 0.5em 0.5em 0.5em 1.5em;
	border: 1px dotted #d90d1bec;
	border-radius: 5px;
	text-indent: -1em; 
 } */

	@media screen and (max-width:1130px){
		.announce-iq{
			margin-left:0em;
			margin-right:0em;
		}
	}
	@media screen and (max-width:560px){
		.announce-iq{
			margin-left:0em;
			margin-right:0em;
			padding: 0.5em 0.5em;
		}
	}