/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */

body {
  padding-top: 3rem;
  /*padding-bottom: 3rem;*/
}

/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */

/* Carousel base class */
.carousel {
  margin-bottom: 0.5rem;
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
  bottom: 3rem;
  z-index: 10;
  text-shadow: 2px 0 10px rgba(0,0,0, .5), -2px 0 10px rgba(0,0,0, .5), 2px 2px 10px rgba(0,0,0, .5), -2px -2px 10px rgba(0,0,0, .5);
}

.carousel-caption h1 {
  font-weight: 600;
  font-family: "Libre Baskerville", serif;
}

.carousel-caption p {
  font-weight: 100;
  font-size: 1.1rem; /*11px*/
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;

}

/* Declare heights because of positioning of img element */
.carousel-item {
  height: 32rem;
  background-color: #777;
}
.carousel-item > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  height: 32rem;
}
/* -------------------------------------------------- */

.navbar {background-color: #f0f0f0!important;}
li.nav-item{
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho";
	font-weight: 500;
	font-size: 1.2vw;
    color: #3c3c3c;}

/* 画面サイズの横幅が 768px より小さい場合に適用 */
@media screen and (max-width: 768px) {
li.nav-item{
    font-size :16px;
  }
}

/*.navbar-nav > li > a:hover, .navbar-nav > li > a:focus {
    background-color: #FFFF00;
    color: #FFC0CB;
}*/

.navbar:hover, .navbar:focus {
	transition: background-color 0.5s ease;
    background-color: #f8f9fa!important;
    color: #FFC0CB!important;
}

.dropdown-menu {
	width:auto; 
	height:auto;
}


/* ページ毎の目次
-------------------------------------------------- */
.navi-contents{
 width:400px; 
 min-height:400px;
 text-align: left;
 padding:20px 0px;
}

.navi-contents > p{
	 border-radius:2px; 
	 background-color:#2f4469; 
	 width:200px; 
	 /*margin:0px auto; */
	 color:#fff;
	 margin-left:;10px
}	

.navi-contents > nav{
 margin: 20px;
 text-align: left;
}

.navi-contents > img{
 width:150x; 
 height:150px;
 display: block;
 margin:auto;
}

.navi-contents > p{
border-left-width: 10px;
border-left-style: solid;
border-left-color: #ff6633;
}
/* -------------------------------------------------- */


/* MARKETING CONTENT
-------------------------------------------------- */

/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
  margin-bottom: 1.5rem;
  text-align: center;
}
.marketing h2 {
  font-weight: 400;
}
.marketing .col-lg-4 p {
  margin-right: .75rem;
  margin-left: .75rem;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  font-weight: 300;
  font-size: 80%;
}

/* Featurettes
------------------------- */
.featurette-divider {
  margin: 3rem 0; /* Space out the Bootstrap <hr> more */
}

/* Thin out the marketing headings */
.featurette-heading {
  font-weight: 300;
  line-height: 1;
  letter-spacing: -.05rem;
}


h2.featurette-heading {
  font-size: 90%;
}

h3.featurette-heading {
  margin-top: 30px;
  font-size: 130%;
  font-weight: 600;
  color:#354869;
}

.row p, p.lead {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  font-weight: 300;
  font-size: 100%;
}


.card-deck div.card  {margin:0;}
.card-header h4 {
  font-size: 80%;
  padding:0;
  margin:0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp:2; /* 任意の行数を指定 */}
  
.card-body {
  font-size: 80%;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif; 
  padding:0;
  margin:10px;  
}

.card-body ul li{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 任意の行数を指定 */}


/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 40em) {
  /* Bump up size of carousel content */
  .carousel-caption p {
    margin-bottom: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }

  .featurette-heading {
    font-size: 30px;
  }
}

@media (min-width: 62em) {
  .featurette-heading {
    margin-top: 7rem;
  }
}

@media (min-width: 48em) {
  .masthead-brand {
    float: left;
  }
  .nav-masthead {
    float: right;
  }
}


/* ヘッダーバナー
-------------------------------------------------- */
.section_events__item {
    position: relative
}

.section_events__item active {
	min-height:450px; 
	max-height:450px;
}

.section_events__item__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity .25s linear;
    opacity: 0;
    background-color: #333;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover
}

.section_events__item__bg:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    background: linear-gradient(45deg, #000A19, transparent)
}

.active .section_events__item__bg {
    opacity: 1
}

.section_events__item__content_lg {
    overflow: hidden;
    max-height: 0;
    transition: opacity .25s;
    opacity: 0;
    color: hsla(0, 0%, 100%, .7)
}

.active .section_events__item__content_lg {
	min-height: 350px;
    max-height: 99999px;
    opacity: 1
}

.section_events__item__content_lg > .row {
    padding: 150px 0 0 0
}

.section_events__item__content_sm {
    cursor: pointer
}

.active .section_events__item__content_sm {
    display: none
}

.section_events__item__content_sm > .row {
    padding: 40px 0;
    border-bottom: 1px solid #f0f0f0
}

.section_events__item__content_sm time {
    font-family: Playfair Display, serif;
    font-size: 2.5rem;
    line-height: 1;
    display: block;
    margin: 0;
    text-align: center;
    color: #151515
}

.section_events__item__content_sm time small {
    font-family: Lato, sans-serif;
    font-size: 1rem;
    display: block;
    margin-top: .5em
}

.section_events__item__content_sm .section_menu__item__price,
.section_events__item__content_sm h4 {
    margin-bottom: 2rem
}

@media (min-width:768px) {
    .section_events__item__content_sm .section_menu__item__price,
    .section_events__item__content_sm h4 {
        margin: 0
    }
}

.section_events__item__content_sm .btn {
    margin: 0
}

h2.section__heading  {
  font-weight: 600; line-height: 1.1em; 
  font-family: "Libre Baskerville", serif;
}

h2.section__heading small  {
  font-size: 40%;
}

p.section__heading__en {  
  font-weight: 600; 
  line-height: 1.1em; 
  font-family: "Libre Baskerville", serif;
}

p.section__subheading  {
  font-weight: 300!important;
  font-size: 1rem; /*11px*/
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Original Yu Gothic", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

h3.section__heading  {
  font-weight: 600;
  font-family: "Libre Baskerville", serif;
}


/* マップ
-------------------------------------------------- */
.company__map {
  margin: 6% 0 0 0;
}

.company__map--title {
  margin: 0;
  font-family: "Yu Mincho", YuMincho, "Source Han Serif JP", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
  font-weight: 600;
  font-size: 2rem; /*20px*/
  text-align: center;
}

.company__map--text {
  margin: 1% 0;
  text-align: center;
}

.company__map--gmap {
  width: 100%;
  height: 450px;
}



/* フッター
-------------------------------------------------- */	

footer li {	
  font-family: "Yu Mincho", YuMincho, "Source Han Serif JP", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
  font-weight: 10;
  color:#fcfcfc;
  font-size: 80%;
}
	
footer li a {
  color:#fcfcfc;
  text-decoration:none;
}
	
footer li a:hover {
  color:#fcfcfc;
	}
	

	
/* indexページの顧客様の声アバター
-------------------------------------------------- */	
.avatar-image {
    border-radius: 50%;
}


	
/* QandAページのQ
-------------------------------------------------- */	
.q_circle {
  color: #fff;
  background-color:#f00;
  padding: 0;
  margin: 0;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center!important;
  display: inline-block;
  border-radius: 50%;
}
.question{
  line-height: 30px;
  text-align: left;
  }	



/* プライバシーポリシーページ
-------------------------------------------------- */	
h2.privacy-title,h2.policy-title {
  font-size: 95%;
}

h3.privacy-subTitle,h3.policy-subTitle {
  font-size: 95%;
}

/* アルミニウム合金の化学成分について（一般資料）のフォントサイズ小さく
-------------------------------------------------- */
.table-ccaa{
  font-size:80%;
}

/* flip-boards
-------------------------------------------------- */	
.lightbox {
  display: none;
}







.top__case--box-wrap,
.top__case--pdf-wrap {
	margin: 0 auto 14%;
	padding: 0 2.5%;
	max-width: 1000px;
}

.top__case--box,
.top__case--box_sub,
.top__pdf--box {
	margin: 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	list-style: none;
}

.top__case--box li,
.top__case--box_sub li,
.top__pdf--box li {
	margin: 0 2% 20px 0;
	border: 1px solid #F2F2F2;
	box-sizing: border-box;
	width: 32%;
	background-color: #F7F7F7;
}

.top__case--box li:last-child,
.top__case--box_sub:last-child,
.top__pdf--box li:last-child {
	margin-right: 0;
}

.top__case--box li:hover {
	opacity: .8;
}

.top__case--box li img:hover {
	opacity: 1;
}

.top__case--box a,
.top__case--box_sub a
 {
	color: #808080;
}

.top__case--box a:hover {
	text-decoration: none;
}

.top__case--box-title {
	margin: 5% 0 0;
	padding: 0 7%;
	font-family: "Yu Mincho", YuMincho, "Source Han Serif JP", "Hiragino Mincho ProN", "MS PMincho", "MS Mincho", serif;
	font-weight: 600;
	font-size: 1.6rem; /*16px*/
	text-align: justify;
}

.top__case--box-text {
	margin: 0 0 5% 0;
	padding: 0 7%;
	font-size: 1.3rem; /*13px*/
	text-align: justify;
}

.top__case--box-moreButton {
	margin: 3% auto 0;
	padding: 40px 0 0 .6em;
	display: block;
	position: relative;
	width: 90px;
	height: 30px;
	line-height: 1.8;
	color: #999;
	font-family: "Libre Baskerville", serif;
	font-weight: 400;
	font-size: 1.5rem; /*15px*/
	font-variant-ligatures: none;
	letter-spacing: .6em;
}

.top__case--box-moreButton::before {
	border-top: solid 4px #999;
	border-right: solid 4px #999;
	position: absolute;
	top: 0;
	left: 40px;
	width: 20px;
	height: 20px;
	content: "";
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
}

.top__case--box-moreButton:hover {
	text-decoration: none;
}

.top__case--box-moreButton:hover::before {
	top: 2px;
}