@charset "utf-8";
/* color scheme */
:root {
  --nagase-color-red:red;
  --nagase-color-blue:blue;
  --nagase-color-cobaltblue:#3071B7;
  --nagase-color-white:#ffffff;
  --nagase-bg-color-sandbeige:#F5F0EF;
  --nagase-bg-color-lightgray: #F5F5F5;
  --nagase-color-grayishblue:#283038;
  --nagase-font-color-azure:#12202B;
  --nagase-font-color-lightgray:#707070;
  --nagase-font-color-white:#ffffff;
  --nagase-badge-color-event:#E7380D;
  --nagase-badge-color-pr:#B76A57;
}
html{scroll-behavior: smooth;}
h1 {color:var(--nagase-color-red);}
h2{
  font-family: 'Oswald', sans-serif;
  color: var(--nagase-font-color-azure);
  position: relative;
  /*width: 250px;
  margin: 20px auto;
  padding: 10px;*/
}
h2:before {
  content: "";
  position: absolute;
  left: 36.5%;
  bottom: -20px;
  width: 30%;
  border-bottom: 4px solid var(--nagase-color-cobaltblue);
}
h2:after {
  content: "";
  position: absolute;
  left: 36%;
  bottom: -20px;
  width: 15%;
  border-bottom: 4px solid var(--nagase-color-red);
}
p{margin-bottom: 0;}
img{width: 100%;height:auto;}
body {font-family: 'Noto Sans JP', sans-serif;}
a{
  color: var(--nagase-color-grayishblue);
  display: inline-block;
}
a:hover{
  opacity: .8;
  text-decoration: none;
}
#mainContents h2 + p.h2sub{
  margin-top: 35px;
}
/* smartphone */
@media (max-width: 576px) {
  h2:before{
    left: 40%;
    width: 60%;
  }
  h2:after{
    left: 0%;
    width: 50%;
  }
}

/* Tablet */
@media (max-width: 768px) {}

/* PC */
@media (min-width: 992px) {}

/* PC Extra Large */
@media (min-width: 1200px) {
	.container {max-width:1366px;}
}


/*-------------------------
logo
-------------------------*/
header a.navbar-brand img {max-height:58px;}


/*-------------------------

  mainvisual

-------------------------*/

.underlayer_kv {
  padding: 0;
  position: relative;
  width: 80%;
}
.underlayer_kv::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 120px solid var(--nagase-color-red);
  border-right: 98px solid transparent;
}
.underlayer_kv::after{
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-bottom: 120px solid var(--nagase-color-cobaltblue);
  border-left: 98px solid transparent;
}

.underlayer_kv .underlayer_kv__text{
  display: inline-block;
  background-color: rgba(255,255,255,0.7);
  padding: 27px 6em 47px 6em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.underlayer_kv .underlayer_kv__text h1{
  font-family: 'Oswald', sans-serif;
  font-size: 3.4rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 3px;
  line-height: 0.8;
  color: var(--nagase-color-grayishblue);
}
.underlayer_kv .underlayer_kv__text h1 span{
  font-size: 1.5rem;
  font-weight: normal;
  letter-spacing: initial;
}

/* smartphone */
@media (max-width: 576px) {
  .underlayer_kv{
    width: 100%;
  }
  .underlayer_kv::before{
    border-top: 5em solid var(--nagase-color-red);
    border-right: 5em solid transparent;
  }
  .underlayer_kv::after{
    border-bottom: 5em solid var(--nagase-color-cobaltblue);
    border-left: 5em solid transparent;
  }
  .underlayer_kv .underlayer_kv__text{
    padding: 10px 2rem 13px 2rem;
    min-width: 68%;
  }
  .underlayer_kv .underlayer_kv__text h1{
    font-size: 1.5rem;
    line-height: 1;
  }
  .underlayer_kv .underlayer_kv__text h1 span{
    font-size: initial;
  }
}

/* Tablet */
@media (max-width: 768px) {
  .underlayer_kv{
    width: 80%;
  }
  .underlayer_kv .underlayer_kv__text{
    padding: 20px 2em 30px 2em;
  }
  .underlayer_kv .underlayer_kv__text h1{
    font-size: 2rem;
  }
  .underlayer_kv .underlayer_kv__text h1 span{
    font-size: 1.25rem;
  }

}

/* PC */
@media (min-width: 992px) {}

/* PC Extra Large */
@media (min-width: 1200px) {}



/*-------------------------

  contact

-------------------------*/
#contact{
  padding: 70px 0 85px;
}
h2.contact__logo{
    width: 12.7%;
    margin: auto;
  }
h2.contact__logo::before,h2.contact__logo::after{
    display: none;
  }
#contact .contact__lead div p{
  font-weight: bold;
  font-size: 1.5rem;
  margin-top: 40px;
}
#contact .contact__kinds{
  margin-top: 40px;
}
#contact .contact__kinds--list a{
  display: block;
}
#contact .contact__kinds--list a div{
  width: 41%;
  margin: auto;
}

#contact .contact__kinds .contact__kinds--list a div{
  width: 40%;
  margin: auto;
}
#contact .contact__kinds .contact__kinds--list a p{
  font-family: 'Oswald', sans-serif;
  font-size: 2rem;
}
.contact__kinds .contact__kinds--address{
  font-size: 1.5rem;
  margin-top: 40px;
}
/*map*/
article#contact  #mapBox{
  width: 53.85%;
  margin: 80px auto 0;
}
aside{
  margin-top: 40px;
}
aside .contact__brancOffice div:nth-of-type(2){
  border-left: 1px solid var(--nagase-font-color-lightgray);
  border-right: 1px solid var(--nagase-font-color-lightgray);
}
aside .contact__brancOffice .contact__brancOffice--Office > div{
  width: 73%;
  margin: auto;
}
.contact__brancOffice--Office div h3{
  font-size: 1.25rem;
  font-weight: bold;
  color: var(--nagase-font-color-lightgray);
}
.contact__brancOffice--Office div p{
  font-size: 1.25rem;
  font-weight: normal;
  color: var(--nagase-font-color-lightgray);
}


/* smartphone */
@media (max-width: 576px) {
  h2.contact__logo{
    width: 78%;
  }
  .contact__kinds--list a div{
    width: 40%;
    margin: auto;
  }

  #contact .contact__kinds .contact__kinds--list a p{
    font-size: 1.5rem;
    line-height: 1.45;
  }
  #contact .contact__kinds div:nth-of-type(3){
    margin-top: 50px;
  }
  article#contact #mapBox{
    width: 100%;
  }
  aside .contact__brancOffice div:nth-of-type(2){
    border-left:none;
    border-right:none;
  }
  aside .contact__brancOffice .contact__brancOffice--Office > div{
    width: 87%;
    border-left: 1px solid;
    padding: 0 0 0 4.7%;
    margin-bottom: 48px;
  }

  .sp{display: block !important;}
  .pc{display: none !important;}
}

/* Tablet */
@media (max-width: 768px) {
  h2.contact__logo{
    width: 30%;
  }
  article#contact #mapBox{
    width: 80%;
  }
  .pc{display: none !important;}
  .ps{display: block !important;}
}

/* PC */
@media (min-width: 992px) {
  .sp{display: none !important;}
  .pc{display: block !important;}
}

/* PC Extra Large */
@media (min-width: 1200px) {
  .sp{display: none !important;}
  .pc{display: block !important;}
}






/*-------------------------

  twocolumn

-------------------------*/
.twocolumn {
  background-color: var(--nagase-bg-color-lightgray);
  padding: 80px 0;
}

/*-------------------------
  sidebar
-------------------------*/
#sidebar aside {
  display: block;
  width: 92.5%;
}
#sidebar aside h2 {
  margin-bottom: 37px;
}
#sidebar aside h2::before {
  right: 0;
  left: 50%;
  width: 50%;
}
#sidebar aside h2::after {
  left: 0;
  width: 50%;
}
#sidebar aside:first-of-type {
  margin-top: 0;
}
#sidebar aside ul li{
  background-color: var(--nagase-color-white);
  margin-top: 15px;
  position: relative;
}
#sidebar aside ul li::after{
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-bottom: 15px solid var(--nagase-color-cobaltblue);
  border-left: 18px solid transparent;
}


/*
  sidebar__type01
-------------------------*/
#sidebar aside.sidebar__type01 h2 span::before{
  content: "";
  display: inline-block;
  width: 38px;
  height: 47px;
  background: url(/assets/img/twocolumn_sidebar-type01_h2.png) no-repeat;
  background-size: contain;
  margin-right: 18px;
  vertical-align: bottom;
}

/*
  sidebar__type02
-------------------------*/
#sidebar aside.sidebar__type02 h2 span::before{
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(/assets/img/twocolumn_sidebar-type02_h2.png) no-repeat;
  background-size: contain;
  margin-right: 18px;
  vertical-align: baseline;
}
.sidebar__type02 .sidebar__type02__area dl {
  padding: 14px 1.75em 14px 1.25em;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.sidebar__type02 .sidebar__type02__area dl dt {
  font-family: 'Oswald', sans-serif;
  font-size: 1.5rem;
  font-weight: normal;
  width: 16%;
  margin-right: 0.8em;
}
.sidebar__type02 .sidebar__type02__area dl dd {
  width: 84%;
  border-left: 1px solid #707070;
  padding-left: 1.2em;
  margin: 0;
}
/*
  sidebar__type03
-------------------------*/
#sidebar aside.blog__archive h2 span::before{
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(/assets/img/twocolumn_sidebar-archive_h2.png) no-repeat;
  background-size: contain;
  margin-right: 18px;
  vertical-align: baseline;
}
.sidebar__type03 .sidebar__type03__area dl{
  padding: 10px 0 10px 1.25em;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.sidebar__type03 .sidebar__type03__area dl dt {
  font-family: 'Oswald', sans-serif;
  font-size: 1.5rem;
  font-weight: normal;
  width: 20.4%;
  margin-right: 0.8em;
}
.sidebar__type03 .sidebar__type03__area dl dd {
  width: 84%;
  border-left: 1px solid #707070;
  padding-left: 1.2em;
  margin: 0;
}
/*
  sidebar__type04
-------------------------*/
#sidebar aside.blog__search h2 span::before{
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(/assets/img/twocolumn_sidebar-search_h2.png) no-repeat;
  background-size: contain;
  margin-right: 18px;
  vertical-align: baseline;
}
.sidebar__type04__area .form-control{
  border-radius: 30px;
}



/* smartphone */
@media (max-width: 576px) {
  #sidebar{
    margin-top: 30px;
  }
  #sidebar aside{
    width: 100%;
  }
  #sidebar aside h2 {
    font-size: 1.5rem;
  }
  #sidebar aside.sidebar__type02 h2 span::before,#sidebar aside.blog__archive h2 span::before,#sidebar aside.blog__search h2 span::before{
    width: 23px;
    height: 23px;
  }
}

/* Tablet */
@media (max-width: 768px) {}

/* PC */
@media (min-width: 992px) {}

/* PC Extra Large */
@media (min-width: 1200px) {}




/*-------------------------
  main
-------------------------*/


.twocolumn .article_wrap .article_wrap__tittle h2 span::before{
  content: "";
  display: inline-block;
  width: 38px;
  height: 38px;
  background: url(/assets/img/twocolumn_main_h2.png) no-repeat;
  background-size: contain;
  margin-right: 18px;
  vertical-align: bottom;
}
.article_wrap .article_wrap__tittle h2{
  margin-bottom: 37px;
}
.article_wrap .article_wrap__tittle  h2::before {
  left: 0;
  width: 100%;

}
.article_wrap .article_wrap__tittle  h2::after {
  left: 0;
  width: 50%;
}
.article_wrap__areaBox article {
  background-color: var(--nagase-color-white);
  padding: 46px 3.5em 42px;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle {
  border-bottom: 2px solid #707070;
  padding-bottom: 20px;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  margin-bottom: 0;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl dt {
  font-family: 'Oswald', sans-serif;
  font-size: 2rem;
  font-weight: normal;
  width: 20.4%;
  margin-right: 0.8em;
  border-right: 1px solid #707070;
  padding-right: 1em;
  line-height: .8;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl dd {
  width: 84%;
  margin: 0;
  line-height: 1;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle p {
  margin-top: 24px;
  margin-top: 24px;
  font-size: 1.5rem;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--imgBox {
  margin-top: 22px;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--lead {
  margin-top: 30px;
}
article.article_wrap__areaBox__article .article_wrap__areaBox__article--lead p + p {
  margin-top: 10px;
}


/* smartphone */
@media (max-width: 576px) {
  #blog #sidebar aside {
    width: 100%;
  }
  article.article_wrap__areaBox__article {
    padding: 22px 1em 30px;
  }
  article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle p {
  font-size: initial;
  font-weight: bold;
  }
  article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl dt{
    font-size: 1.25rem;
    padding-right: 5em;
  }
  article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl dd{
    font-size: 0.9rem;
  }
}

/* Tablet */
@media (max-width: 768px) {
  article.article_wrap__areaBox__article .article_wrap__areaBox__article--tittle dl dt{
    padding-right: 5em;
  }
}

/* PC */
@media (min-width: 992px) {}

/* PC Extra Large */
@media (min-width: 1200px) {}


/*-------------------------
  PAGE TOP
-------------------------*/
.pagetop{
  position: fixed;
  bottom: 60px;
  right: 0;
}
.pagetop a{
  background-color: var(--nagase-font-color-azure);
  color: var(--nagase-color-white);
  font-family: 'Oswald', sans-serif;
  padding: 48px 1em 16px;
  display: inline-block;
  position: relative;
}
.pagetop a::before{
  position: absolute;
  content: "";
  display: inline-block;
  width: 25px;
  height: 12px;
  background: url(/assets/img/pagetop.png) no-repeat;
  background-size: contain;
  top: 30px;
  left: 35px;
  vertical-align: bottom;
}

.pagetop__show {
	opacity:1;
	visibility:visible;
	transition:1.5s ease, visibility 1.5s ease;
}

.pagetop__hidden {
	opacity:0;
	visibility:hidden;
	transition:opacity 1s ease;visibility 1s ease;
}
