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

/***
* common_pc.css
*/

@media only print, only screen and (min-width: 1000px){

.sp,
.tab,
.tab_sp{
	display:none;
}

.pc,
.pc_tab,
.pcw_pc{
	display:block;
}

.hover{
	opacity:1;
	transition-duration: 0.5s;
}

.hover:hover{
	opacity:0.3;
	transition-duration: 0.5s;
}

.hyphen{
  position: relative;
  top: -0.1vw;
}

a{
  color: #000;
	transition-duration: 0.5s;
}

a:hover{
  color: #bbb;
	transition-duration: 0.5s;
}

.btn{
  padding: 1px 10px 2px;
  color: #000;
  border: 1px solid #000;
  font-size: 15px;
  display: inline-block;
  border-radius: 50px;
}

.btn:hover{
  color: #fff;
  background: #000;
}

.jp{
  font-family: 'NeueHaasGroteskText W01', a-otf-gothic-bbb-pr6n, sans-serif;
  font-feature-settings: "palt" 1;
}

/***
* layout
*/

#wrapper{
  opacity: 0;
}

/* header */

#header{
  width: 100%;
  position: fixed;
  top: 0;
  font-size: 11px;
  line-height: 1.8;
  z-index: 3333;
}

.mainVisualArea a{
  color: #fff;
}

#logo{
  width: 107px;
  position: absolute;
  top: 22px;
  left: 26px;
}

#logoSvg,
#logoSvgWh{
  position: absolute;
  left: 0;
}

.mainVisualArea #logoSvg{
  visibility: hidden;
  opacity: 0;
  transition-duration: 0.5s;
}

#logoSvgWh{
  visibility: hidden;
  opacity: 0;
  transition-duration: 0.5s;
}

.mainVisualArea #logoSvgWh{
  visibility: visible;
  opacity: 1;
  transition-duration: 0.5s;
}

.dark #logoSvg{
  visibility: hidden;
  opacity: 0;
  transition-duration: 0.5s;
}

.dark #logoSvgWh{
  visibility: visible;
  opacity: 1;
  transition-duration: 0.5s;
}

#nav{
  display: block;
}

#navMain{
  position: absolute;
  top: 19px;
  left: 232px;
}

#navMain ul{
  float: left;
  margin-right: 46px;
}

#navSub{
  position: absolute;
  top: 19px;
  right: 26px;
}

#navSub li{
  margin-left: 16px;
  display: inline-block;
}

/* footer */

#footer{
  width: 100%;
  position: relative;
  padding: 0 0 20px;
  bottom: 0;
  border-top: 1px solid #000;
  font-size: 11px;
  line-height: 1.727;
}

#btnPageTop{
  position: absolute;
  bottom: 20px;
  left: 30px;
}

#footerNavMain{
  width: 60%;
  position: relative;
  top: 18px;
  left: auto;
  float: right;
  margin: 0 0 60px;
}

#footerNavMain ul{
  float: left;
  margin-right: 60px;
}

#footerNavSub{
  position: absolute;
  top: 0;
  left: auto;
  right: 30px;
  margin-right: 0;
}

#footerNavSub li{
  float: left;
  margin-right: 16px;
}

#footerNavSub li:last-child{
  margin-right: 0;
}

#footerNavMain ul#footerNavSub{
  margin-right: 0;
}

#footerNavMain ul#footerNavApp{
  margin-bottom: 0;
}

#footerNavApp{
  width: 60%;
  margin-right: 0;
  float: right;
}

#footerCopy{
  position: absolute;
  bottom: 20px;
  right: 30px;
}

.dark #footer{
  border-top: 1px solid #fff;
}

.dark #btnAppSp span{
  border-bottom: 1px solid #fff;
}

/* main */

#main{
  padding: 168px 26px 200px;
}

#newsThumb{
  width: 100%;
  overflow: hidden;
  border-top: 1px solid #000;
  padding-top: 7px;
}

#newsThumb ul{
  width: calc(100% + 7px);
  margin-bottom: 80px;
}

#newsThumb li{
  width: calc(100% / 4 - 7px);
  float: left;
  margin: 0 7px 46px 0;
  font-size: 12px;
  line-height: 1.333;
}

.listImg{
  margin-bottom: 18px;
  display: block;
  position: relative;
  overflow: hidden;
}

.listImg img{
  width: 100%;
  height: 16vw;
  object-fit: cover;
  display: block;
}

#newsThumb li a img{
  transform: scale(1);
  transition-duration: 0.5s;
}

#newsThumb li:hover a img{
  transform: scale(1.1);
  transition-duration: 0.5s;
}

#news p span{
  display: block;
}

.newsDate,
.newsTtl{
  float: left;
}

.newsTtl{
  height: 44px;
}

.newsDate{
  margin-right: 40px;
}

#pager{
  font-size: 13px;
  text-align: center;
}

#divider{
  width: 1px;
  height: 10px;
  background: #000;
  margin: 0 20px;
  display: inline-block;
}

#pagerCounter{
  margin-left: 40px;
}

/* article */

#article{
  width: calc(100% - 206px);
  float: right;
}

section{
  padding: 30px 0 60px;
  border-top: 1px solid #000;
}

.sectionInner{
  width: calc(100% - 206px);
}

#article .date{
  margin-bottom: 40px;
  font-size: 11px;
}

#article h2{
  font-family: 'Neue Haas Unica W01 Bold', Helvetica, sans-serif;
  margin-bottom: 26px;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: -0.025em;
}

#article p{
  margin-bottom: 40px;
  font-family: yu-gothic-pr6n, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: subpixel-antialiased;
  font-size: 11px;
  line-height: 2;
}

#article strong{
  font-size: 16px;
  line-height: 1.5;
}

#article p.infomarion{
  padding-left: 22px;
  position: relative;
}

#article p.infomarion::before{
  content:'◯'; 
  position: absolute;
  left: 0;
}

#article img{
  margin-bottom: 20px;
}

#article .port{
  width: 49%;
}

#btnLink{
  width: calc(100% - 206px);
  margin-bottom: 140px;
}

#btnLink ul{
  text-align: center;
}

#btnLink li{
  display: inline-block;
  margin-right: 2px;
}

#btnLink .btn{
  font-size: 20px;
  border-radius: 0;
  padding: 2px 4px 0;
}

#btnBackList{
  width: calc(100% - 206px);
  font-size: 20px;
  text-align: center;
  display: block;
}

#mainContentsTtl{
  margin-bottom: 60px;
}

.sub #article{
  border-top: 1px solid #000;
  padding-top: 20px;
}

#article h2#articleTtl{
  font-size: 19px;
  font-family:'Neue Haas Unica W01 Regular';
  margin-bottom: 10px;
}

#article h3#articleSub{
  font-size: 15px;
  font-family:'Neue Haas Unica W01 Regular';
  margin-bottom: 10px;
}

.sub #article p{
  width: calc(100% - 206px);
  margin-bottom: 20px;
}

.sub #article h4{
  margin-bottom: 20px;
  font-size: 15px;
  font-family:'Neue Haas Unica W01 Regular';
}

#links{
  width: calc(100% - 206px);
  margin-top: 140px;
  text-align: center;
}

#links li{
  display: inline-block;
}

.sub #article .btn{
  padding: 2px 4px 0px;
  border-radius: 0;
  font-family:'Neue Haas Unica W01 Regular';
}

}