@charset "UTF-8";
/* layout */
.wrap_a { max-width: 1280px; margin: 0 auto; padding: 0 16px; }

@media screen and (max-width: 640px) { .wrap_a { padding: 0 22.4px; } }

.wrap_a:after { content: "."; display: block; height: 0; visibility: hidden; clear: both; }

.wrap_a a { color: #263163; }

.wrap_a a:hover { text-decoration: underline; }

/******************************************************/
/* top page */
/******************************************************/
/* common */
.icon_link::after { position: relative; top: 3px; left: 3px; content: url("/common/images/icon_link_pc.png"); }

.icon_pdf::after { position: relative; top: 4px; left: 3px; content: url("/common/images/icon_pdf_pc.png"); }

@media only screen and (max-width: 640px) { .icon_link::after { top: .5vw; left: .5vw; content: url("/common/images/icon_link_sp.png"); }
  .icon_pdf::after { top: 8px; left: 6px; content: url("/common/images/icon_pdf_sp.png"); } }

.topMainVisual { position: relative; margin-bottom: 45px; }

.topMainVisual_pc { height: 452px; background-size: 100% auto; background-repeat: no-repeat; background-position: center top; }

.topMainVisual_sp { background: none; }

.topMainVisual_txt { position: absolute; top: calc(50% - 61px); left: calc(50% - 305px); }

.topMainVisual_pc { background-size: 1366px auto; }

@media screen and (max-width: 1366px) { .topMainVisual_pc { background-size: 100% auto; height: 33.08vw; } }

@media only screen and (max-width: 640px) { .topMainVisual { height: 62vw; margin-bottom: 7vw; }
  .topMainVisual_pc { background: none !important; }
  .topMainVisual_sp { height: 62vw; background-size: auto 100%; background-repeat: no-repeat; background-position: center; }
  .topMainVisual_txt { top: calc(50% - 61px); left: calc(50% - 305px); } }

/* topInfo */
.topInfo { margin-bottom: 0; }

.topInfo_box { display: flex; justify-content: space-between; margin-bottom: 25px; }

.topInfo_mark { width: 180px; text-align: center; font-size: 16px; font-weight: bold; }

.topInfo_mark img { margin-bottom: 15px; }

.topInfo_list { width: calc(100% - 210px); }

.topInfo_list li { background: #f5f5f5; margin-bottom: 2px; }

.topInfo_list li a { display: block; position: relative; padding: 10px 30px; }

.topInfo_list li a::before { display: block; content: ""; position: absolute; top: calc(50% - 4px); left: 8px; width: 6px; height: 6px; border-top: solid 2px #e60012; border-right: solid 2px #e60012; transform: rotate(45deg); }

@media only screen and (max-width: 1024px) { .topInfo_box { margin-bottom: 0; }
  .topInfo_mark { width: 130px; font-size: 14px; }
  .topInfo_mark img { margin-bottom: 10px; }
  .topInfo_list { width: calc(100% - 150px); }
  .topInfo_list li { font-size: 12px; } }

@media only screen and (max-width: 640px) { .topInfo_box { display: block; margin-bottom: 45px; }
  .topInfo_mark { width: 100%; text-align: left; font-weight: normal; font-size: 4vw; }
  .topInfo_mark img { width: 8vw; margin: 0 3vw 5vw 0; float: left; }
  .topInfo_mark span { display: block; margin: -4.5vw 0 0; }
  .topInfo_list { clear: both; width: 100%; }
  .topInfo_list li { font-size: 3vw; }
  .topInfo_list li a { padding: 2.5vw 2.5vw 2.5vw 7.5vw; }
  .topInfo_list li a::before { top: calc(50% - 1.2vw); left: 2vw; width: 2vw; height: 2vw; border-width: .75vw; } }

/* topInfo_txt */
.topInfo_txt { padding: 16px 0; background-color: #f5f5f5; margin-top: -45px; margin-bottom: 45px; }

@media screen and (max-width: 640px) { .topInfo_txt { font-size: 22px; padding: 22px 0; margin-top: -7vw; margin-bottom: 7vw; } }

/* topNavi */
.topNavi { margin-bottom: 45px; }

.topNavi a { transition: .3s; }

.topNavi a:hover { opacity: .6; }

.topNaviArea:after { content: "."; display: block; height: 0; visibility: hidden; clear: both; }

.topNaviArea .topNaviBox { position: relative; float: left; display: block; width: 50%; }

.topNaviArea .topNaviBox.tnb_fives { width: 20%; margin-bottom: 30px; }

.topNaviArea .topNaviBox.tnb_narrow { width: 25%; }

.topNaviArea .topNaviBox img { width: 100%; }

.topNaviArea .topNaviBox .topNaviTxt { display: table; position: absolute; bottom: 0; width: 100%; background: rgba(0, 0, 0, 0.7); color: #fff; font-size: 16px; font-weight: bold; }

.topNaviArea .topNaviBox .topNaviTxt.white { background: rgba(255, 255, 255, 0.7); color: #212121; }

.topNaviArea .topNaviBox .topNaviTxt span { display: table-cell; height: 80px; vertical-align: middle; padding: 0 35px 0 25px; }

.topNaviArea .topNaviBox .topNaviTxt::after { display: block; content: ""; position: absolute; top: calc(50% - 4px); right: 25px; width: 6px; height: 6px; border-top: solid 2px #e60012; border-right: solid 2px #e60012; transform: rotate(45deg); }

.topNaviArea .topNaviBox .topNaviTxt span::after { position: relative; top: 3px; left: 3px; content: url("/common/images/icon_link_pc.png"); }

.topNaviArea .topNaviBox .topNaviTxt span::after, .topNaviArea .topNaviBox .topNaviTxt.white span::after { content: none; }

.topNaviArea .topNaviBox.tnb_fives .topNaviTxt span::after { content: none; }

.topNaviArea .topNaviBox .topNaviSub { position: absolute; top: 20px; left: 20px; padding: 8px 16px; background: rgba(0, 0, 0, 0.7); border-radius: 30px; color: #fff; font-size: 12px; }

@media only screen and (max-width: 1280px) { .topNavi { margin-bottom: 25px; }
  .topNaviArea .topNaviBox .topNaviTxt { font-size: 1.2vw; }
  .topNaviArea .topNaviBox .topNaviTxt span { height: 64px; padding: 0 30px 0 20px; }
  .topNaviArea .topNaviBox .topNaviTxt::after { right: 20px; }
  .topNaviArea .topNaviBox .topNaviSub { padding: 6px 12px; font-size: 11px; } }

@media only screen and (max-width: 1024px) { .topNavi { margin-bottom: 8vw; }
  .topNaviArea .topNaviBox .topNaviTxt { font-size: 1.25vw; }
  .topNaviArea .topNaviBox .topNaviTxt span { height: 7vw; padding: 0 2.5vw 0 1.5vw; }
  .topNaviArea .topNaviBox .topNaviTxt::after { right: 1.5vw; }
  .topNaviArea .topNaviBox .topNaviSub { top: 1.5vw; left: 1.5vw; padding: .75vw 1.5vw; font-size: 1.2vw; } }

@media only screen and (max-width: 640px) { .topNavi { margin-bottom: 20vw; }
  .topNaviArea .topNaviBox { width: 100%; }
  .topNaviArea .topNaviBox .topNaviTxt { font-size: 3.25vw; font-weight: normal; }
  .topNaviArea .topNaviBox .topNaviTxt::after { right: 3vw; }
  .topNaviArea .topNaviBox .topNaviTxt span { height: 12vw; padding: 0 6vw 0 4vw; }
  .topNaviArea .topNaviBox.tnb_narrow { width: 100%; background: rgba(0, 0, 0, 0.8); }
  .topNaviArea .topNaviBox.tnb_narrow .topNaviTxt { background: rgba(0, 0, 0, 0); }
  .topNaviArea .topNaviBox.tnb_narrow .topNaviTxt.white { background: #fff; }
  .topNaviArea .topNaviBox.tnb_narrow .topNaviPic, .topNaviArea .topNaviBox.tnb_narrow .topNaviTxt { width: 50%; }
  .topNaviArea .topNaviBox.tnb_narrow .topNaviPic, .topNaviArea .topNaviBox.tnb_narrow.spRight .topNaviTxt { margin-left: 50%; }
  .topNaviArea .topNaviBox.tnb_narrow.spRight .topNaviPic { margin-left: 0; }
  .topNaviArea .topNaviBox.tnb_narrow .topNaviTxt span { height: 45vw; }
  .topNaviArea .topNaviBox.tnb_fives { width: 100%; margin-bottom: 0; background: #333; }
  .topNaviArea .topNaviBox.tnb_fives.white { background: #fff; }
  /*.topNaviArea .topNaviBox.tnb_fives:nth-of-type(2n) { background: #fff; } .topNaviArea .topNaviBox.tnb_fives:nth-of-type(2n+1) { background: rgba(0,0,0,.8); }*/
  .topNaviArea .topNaviBox.tnb_fives .topNaviTxt { background: none; }
  .topNaviArea .topNaviBox.tnb_fives .topNaviPic, .topNaviArea .topNaviBox.tnb_fives .topNaviTxt { width: 50%; }
  .topNaviArea .topNaviBox.tnb_fives .topNaviPic, .topNaviArea .topNaviBox.tnb_fives.spRight .topNaviTxt { margin-left: 50%; }
  .topNaviArea .topNaviBox.tnb_fives.spRight .topNaviPic { margin-left: 0; }
  .topNaviArea .topNaviBox.tnb_fives .topNaviTxt span { height: 44vw; }
  .topNaviArea .topNaviBox.tnb_fives .topNaviTxt span::after { content: none; }
  .topNaviArea .topNaviBox .topNaviTxt::after { top: calc(50% - 8px); width: 12px; height: 12px; border-top: solid 4px #e60012; border-right: solid 4px #e60012; }
  .topNaviArea .topNaviBox .topNaviTxt span::after { top: 6px; left: 6px; content: url("/common/images/icon_link_sp.png"); }
  .topNaviArea .topNaviBox .topNaviTxt span::after { content: none; }
  .topNaviArea .topNaviBox .topNaviSub { top: 3vw; left: 3vw; padding: 1vw 2vw; font-size: 2.5vw; }
  .topNaviArea .topNaviBox.spRight .topNaviSub { left: calc(50% + 20px); } }

/* topNewsArea */
.topNewsArea { margin: 0 0 45px; }

.topNewsTitle { text-align: center; font-size: 24px; margin: 80px 0 40px; }

.topNewsArea .wrap_a { position: relative; }

.topNewsArea .newsSubNav { width: 166px; height: 50px; display: block; position: absolute; top: 6px; right: 20px; text-align: right; }

.topNewsArea .newsSubNav li { display: inline; }

.topNewsArea .newsSubNav li:before { content: ""; left: 0; top: 0; background: none; display: none; }

.topNewsArea .newsSubNav li a { text-decoration: none; font-size: 12px; color: #4d4d4d; box-sizing: border-box; padding: 0; }

.topNewsArea .newsSubNav li a:hover { text-decoration: underline; }

/*.topNewsArea .newsSubNav li a.icnList {
background: url(/jp/common/images/contents/icon_list.svg) left center no-repeat;	background: url(/jp/common/images/contents/icon_list.svg) left center no-repeat;
background-size: 16px 12px;	background-size: 16px 12px;
padding: 10px 25px 7px 20px;	padding: 10px 25px 7px 20px;
}*/
/*20200130追加*/
.topNewsArea .newsSubNav li a.icnList { background: url(/common/images/icon_list.svg) left center no-repeat; background-position-x: 10px; background-size: 26px 12px; padding: 7px 15px 7px 37px; background-color: #e60012; font-weight: bold; color: #fff; }

.topNewsArea .newsSubNav li a.icnRss { background: url(/common/images/icon_rss.svg) left center no-repeat; background-size: 12px 12px; padding: 10px 0 7px 20px; }

.topNewsArea .newsText > li { padding: 25px 0; }

.topNewsArea .newsText > li:nth-of-type(2n+1) { background: #f5f5f5; }

.topNewsArea .newsText > li ul { margin-bottom: 10px; }

.topNewsArea .newsText > li ul li { display: inline; margin-right: 10px; color: #4d4d4d; font-size: 12px; }

.topNewsArea .newsText > li a:hover { text-decoration: none; }

.topNewsArea .newsText > li a:hover .txt { text-decoration: underline; }

.topNewsArea .newsText > li ul li.new { position: relative; top: -3px; padding: 2px 10px; background: #e60012; border-radius: 10px; color: #fff; }

.topNewsArea .newsText > li a { display: block; position: relative; padding-right: 30px; }

.topNewsArea .newsText > li a::after { display: block; content: ""; position: absolute; top: calc(50% - 4px); right: 0; width: 6px; height: 6px; border-top: solid 2px #9e9e9e; border-right: solid 2px #9e9e9e; transform: rotate(45deg); }

.topNewsArea .newsText > li a .linkPdf::after { position: relative; top: 3px; left: 3px; content: url("/common/images/icon_pdf_pc.png"); }

@media screen and (max-width: 640px) { .topNewsArea .newsText > li a .linkPdf::after { top: 8px; left: 6px; content: url("/common/images/icon_pdf_sp.png"); } }

@media only screen and (max-width: 1280px) { .topNewsArea .newsText > li { padding: 20px 0; } }

@media only screen and (max-width: 1024px) { .topNewsArea { margin: 0 0 5vw; }
  .topNewsTitle { font-size: 2.75vw; margin: 8vw 0 3vw; } }

@media only screen and (max-width: 640px) { .topNewsArea { margin: 0 0 15vw; }
  .topNewsTitle { margin: 8vw 0 4vw; text-align: left; font-size: 5vw; font-weight: normal; }
  .topNewsTitle.center { text-align: center; }
  .topNewsArea .newsSubNav { width: 50%; height: auto; top: 1vw; right: 0; }
  .topNewsArea .newsSubNav li a { font-size: 3.75vw; }
  .topNewsArea .newsSubNav li a.icnList { background-size: 4.8vw 3.6vw; padding: 5px 2vw 6px 9vw; margin-right: 10px; }
  .topNewsArea .newsSubNav li a.icnRss { background-size: 3.6vw 3.6vw; padding: 0 16px 0 6vw; }
  .topNewsArea .newsText { clear: both; }
  .topNewsArea .newsText > li { padding: 5vw 0; }
  .topNewsArea .newsText > li ul { margin-bottom: 2vw; }
  .topNewsArea .newsText > li ul li { display: block; font-size: 3.25vw; }
  .topNewsArea .newsText > li ul li.new { position: relative; top: 0; margin: 1.5vw 0; padding: 2px 1vw; width: 80px; border-radius: 30px; text-align: center; }
  .topNewsArea .newsText > li .txt { font-size: 4vw; }
  .topNewsArea .newsText > li a::after { top: calc(50% - 8px); right: -5px; width: 12px; height: 12px; border-top: solid 4px #9e9e9e; border-right: solid 4px #9e9e9e; }
  .topNewsArea .newsText > li a .linkPdf::after { top: 1vw; left: 6px; } }

/* topNewsFrame */
.topNewsFrame .newsNavPC { display: flex; justify-content: center; }

@media screen and (max-width: 640px) { .topNewsFrame .newsNavPC { flex-wrap: wrap; margin-top: -4px; margin-right: -4px; } }

.topNewsFrame .newsNavPC li { display: flex; }

@media print, screen and (min-width: 641px) { .topNewsFrame .newsNavPC li { margin: 0 2px; } }

@media screen and (max-width: 640px) { .topNewsFrame .newsNavPC li { width: calc(100%/3 - 4px); margin-top: 4px; margin-right: 4px; } }

.topNewsFrame .newsNavPC li a { display: flex; align-items: center; justify-content: center; background: #9e9e9e; color: #fff; text-align: center; transition: .3s; line-height: 1.2; font-size: 16px; }

@media print, screen and (min-width: 641px) { .topNewsFrame .newsNavPC li a { min-width: 6em; } }

@media screen and (max-width: 640px) { .topNewsFrame .newsNavPC li a { width: 100%; } }

@media only screen and (max-width: 1280px) { .topNewsFrame .newsNavPC li a { font-size: 14px; } }

@media only screen and (max-width: 800px) { .topNewsFrame .newsNavPC li a { font-size: 1.75vw; } }

@media screen and (max-width: 640px) { .topNewsFrame .newsNavPC li a { font-size: 3.5vw; } }

.topNewsFrame .newsNavPC li a:hover, .topNewsFrame .newsNavPC li a.select { background: #e60012; text-decoration: none; }

.topNewsFrame .newsNavPC li a span { display: block; padding: 0.8em; }

/* topInfoArea */
.topInfoArea { background: #f5f5f5; padding: 50px 0; }

.topInfoTitle { text-align: center; font-size: 24px; margin: 0 0 30px; }

.topInfoFrame:after { content: "."; display: block; height: 0; visibility: hidden; clear: both; }

.topInfoBox { display: flex; justify-content: space-between; float: left; width: 45%; margin-left: 5%; margin-bottom: 30px; }

.topInfoBox:nth-of-type(2n+1) { clear: both; margin-left: 0; }

.topInfoBox .topInfoImg { width: 46%; }

.topInfoBox .topInfoTxt { width: 46%; }

.topInfoLink { position: relative; font-size: 16px; margin: 0 0 10px; }

.topInfoLink::before { display: block; content: ""; position: absolute; top: 6px; left: -20px; width: 6px; height: 6px; border-top: solid 2px #e60012; border-right: solid 2px #e60012; transform: rotate(45deg); }

.topInfoLink::after { position: relative; top: 3px; left: 3px; content: url("/common/images/icon_link_pc.png"); }

@media screen and (max-width: 640px) { .topInfoLink::after { top: .5vw; left: .5vw; content: url("/common/images/icon_link_sp.png"); } }

.topInfoExp { font-size: 14px; }

@media only screen and (max-width: 1280px) { .topInfoBox { margin-bottom: 20px; }
  .topInfoLink { font-size: 14px; margin: 0 0 10px; } }

@media only screen and (max-width: 1024px) { .topInfoArea { padding: 5vw 0; }
  .topInfoTitle { margin: 0 0 5vw; }
  .topInfoTitle { font-size: 2.75vw; margin: 0 0 3vw; }
  .topInfoBox { margin-bottom: 1.5vw; }
  .topInfoLink { font-size: 1.5vw; } }

@media only screen and (max-width: 640px) { .topInfoArea { padding: 10vw 0 12vw; }
  .topInfoTitle { font-size: 5vw; font-weight: normal; }
  .topInfoBox { display: block; float: none; width: 100%; margin-left: 0; margin-bottom: 3vw; }
  .topInfoBox .topInfoImg { width: 100%; text-align: center; margin: 0 0 2vw; }
  .topInfoBox .topInfoImg img { width: 100%; }
  .topInfoBox .topInfoTxt { width: 100%; }
  .topInfoLink { font-size: 3.75vw; padding-left: 5.5vw; }
  .topInfoLink::before { top: 1vw; left: 0; width: 2vw; height: 2vw; border-width: 1vw; }
  .topInfoLink::after { top: .5vw; left: .5vw; }
  .topInfoExp { font-size: 22px; } }

/******************************************************/
/* footer */
/******************************************************/
@media only screen and (max-width: 1024px) { body#top #footer { width: auto; margin-left: 10px; margin-right: 10px; }
  body#top #footerNavi { width: auto; }
  body#top #footerNavi .wrap { width: auto; }
  body#top #footerMain { width: auto; } }
