
/***********************************************************************************************************************

topics.css

***********************************************************************************************************************/
.topics{

}

.topics main{
	/*overflow: hidden;*/
}



/* sec *********************************/
.sec_hd{
	position: relative;
}
.sec_news{
	padding: 8% 0; 
}



@media screen and (max-width: 767px) {
.sec_news{
	padding: 12% 0;
}
}



/* hd_main *********************************/
.hd_main{
	padding-top: 20.833333%;
	background-color: #2d4055;
}
.hd_main img{
	width: 100%;
	height: auto;
}
.hd_main .pc{}
.hd_main .sp{ display: none;}


p.p_hd_ttl{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 95%;
	padding: 0;
	margin: 0;
	font-size: 34px; /*40px*/
	font-size: clamp(18px, 3.4vw, 34px); /*clamp(20px, 4vw, 40px)*/
	font-weight: 600;
	color: #fff;
	text-align: center;
}
p.p_hd_ttl .en{
	display: block;
	font-size: 16px;
	font-size: clamp(14px, 1.6vw, 16px);
	line-height: 1;
}


@media screen and (max-width: 767px) {
.hd_main{
	padding-top: 35%;
}
.hd_main .pc{ display: none;}
.hd_main .sp{ display: block;}
}




/*** h1〜  **********************************/
h1.h1_ttl{
	font-size: 54px;
	font-size: clamp(30px, 5.4vw, 54px);
	font-weight: 900;
	text-align: center;
	margin-bottom: 0.4em;
}
h1.h1_ttl.detail{
	font-size: 34px;
	font-size: clamp(20px, 3.4vw, 34px);
	font-weight: 800;
	text-align: left;
	margin-bottom: 0.4em;
}

h2.h2_privacy{
	font-size: 20px;
	font-size: clamp(16px, 2vw, 20px);
	font-weight: 600;
	line-height: 1.6em;
	padding-bottom: 0.2em;
	margin-bottom: 0.5em;
	border-bottom: 1px solid #ccc;
}

h3.h3_privacy{
	font-size: 18px;
	font-size: clamp(14px, 1.8vw, 18px);
	font-weight: 600;
	line-height: 1.6em;
	margin-bottom: 0.5em;
}

p.p_lead{
	text-align: center;
}


@media screen and (max-width: 767px) {
p.p_lead{
	text-align: justify;
}
p.p_lead .resp_autowrap{
	display: inline;
}
}




/**********************************

top-topics.php

**********************************/

.cateBox{
	margin: 0 0 8em;
}

@media screen and (max-width: 767px) {
.cateBox{
	margin: 0 0 3em;
}
}



/* cate_list *******************************/
.cate_list{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
.cate_list li{
	width: 19%;
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	font-size: 1.4rem;
	font-size: 14px;
	text-align: center;
}
.cate_list li a{
	display: flex;
	flex-direction: column;
	color: #004da0;
	font-weight: 500;
	border: 1px solid #004da0;
	padding: 10px 0;
}
.cate_list li a:hover{
	color: #fff;
	background-color: #004da0;
	text-decoration: none;
}

@media screen and (max-width: 767px) {
.cate_list li{
	font-size: 1.2rem;
	font-size: 12px;
}
}

@media screen and (max-width: 639px) {
.cate_list li{
	width: 49%;
	margin-bottom: 2%;
}
.cate_list li:first-child{
	width: 100%;
	display: none;
}
}



/* kiji*******************************/
dl.kiji{
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
dl.kiji dt{
	width: calc(100% - 230px);
	margin-top: -4px;
}
dl.kiji dd{
	position: relative;
	width: 220px;
	text-align: left;
	margin: 0;
}

.copy_name{
	display: none;
}
.displayNone{
	display: none;
}

ul#newsList{
	margin:0;
	padding:0;
}

ul#newsList li{
	position: relative;
	margin: 0 0;
	padding: 30px 60px 30px 20px;
	color: #000;
	border-bottom: 1px solid rgba(120,152,203,0.4);
	transition: all .3s linear;
}
ul#newsList li:first-child{
	border-top: 1px solid rgba(120,152,203,0.4);
}

ul#newsList li:hover{
	background-color:rgba(120,152,203,0.05);
}

 ul#newsList a li:after{
	content: "";
	display: block;
	position: absolute;
	z-index: 5;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
	width: 20px;
	height: 20px;
	background: url("/common/img/btn_arrow/btn_arrow_blue.svg") center center / contain no-repeat;
	transition: all .3s linear;
}
 ul#newsList a:hover li:after{
 	right: 10px;
 }

#newsList li.no_news {
    padding: 50px 20px;
    text-align: center;
	border-bottom: none;
}
#newsList li.no_news:first-child {
	border-top: none;
}
#newsList li.no_news:hover {
	background-color: transparent;
}


.catName{
	display:inline-block;
	width: 8em;
	font-size: 15px;
	font-size: clamp(12px, 1.5vw, 15px);
	text-align: center;
	color: #fff;
	background-color: #004da0;
	padding: 0.4em 0;
	letter-spacing: 0.05em;
}
a .catName{
	transition: all .3s linear;
}
a:hover .catName{
	/*background-color: #f29600;*/
}
.title{
	display: block;
	margin: 10px 0 0;
	padding: 0;
	font-size: 16px;
	font-size: clamp(14px, 1.6vw, 16px);
	line-height: 1.8em;
	color: #000;
}

.newMark{
	position: absolute;
	z-index: 1;
	top: -10px;
	left: -10px;
	display:block;
	width: 34px;
	height: 34px;
	line-height: 34px;
	padding:0;
	font-size:12px;
	text-align: center;
	background:#f29600;
	border-radius: 17px;
	color:#fff;
}
.comment{
	/*display:block;*/
	padding:3px 0;
	/*float:left;
	overflow:hidden;*/
	/*width:500px; 本文部分の幅。ここは特に設置ページ合わせて変更下さい */
}

.up_ymd{
	display:inline-block;
	font-size: 16px;
	font-size: clamp(14px, 1.6vw, 16px);
	margin: 0 10px 0 0;	
	color: #004da0;
}

.thumbNailWrap{
	display: block;
  position: relative;
  width: 100%;/*　トリミングしたい枠の幅（固定にしたい場合はサイズを入力）　*/
  padding-top: 67.857142%;/*　トリミングしたい枠の高さ（固定にしたい場合はサイズを入力）　*/
  overflow: hidden;/*　画像が枠からはみ出た部分はトリミング（非表示）する　*/
  margin: 0 0 12px;
}
.thumbNailWrap img{
/* 画像を上下左右に中央配置する（絶対指定） */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* 画像の最大サイズは枠の1.5倍まで */
/*  max-width: 150%;
  max-height: 150%;*/
}

.thumbNailWrap img.no_image{
	width: 100%!important;
	height: auto;
}
a .thumbNailWrap{
	transition: all .3s linear;
}
a:hover .thumbNailWrap{
	opacity: 0.7;
}


/* top-topics *******************************/
.top-topics{
	background-color: #fff;
}
.top-topics #newsWrap{
	padding: 20px 0 0 20px;
}

@media screen and (max-width: 767px) {
.top-topics #newsWrap{
	padding: 20px 0 0 12px;
}

dl.kiji dt{
	width: 100%;
	margin-top: 10px;
}
dl.kiji dd{
	width: 100%;
}

.catName{
	font-size: 1.3rem;
	font-size: 13px;
}
.title{
	font-size: 1.3rem;
	font-size: 13px;
}
.newMark{
	transform: scale(0.8, 0.8);
	left: -14px;
}
.up_ymd{
	font-size: 1.3rem;
	font-size: 13px;	
}
}



@media screen and (max-width: 600px) {
/* top-topics *******************************/
/*.top-topics dl.kiji{
	margin-left: 0;
}
.top-topics dl.kiji dt{
	width: 100%;
	margin-top: 0;
}
.top-topics dl.kiji dd{
	width: 100%;
}

.top-topics .catName{
	transform: scale(0.8, 0.8);
	font-size: 1.0rem;
	font-size: 10px;
	width: 80px;
	margin:0 0 0 0;
}
.top-topics .title{
	font-size: 1.2rem;
	font-size: 12px;
}
.top-topics .newMark{
	transform: scale(0.8, 0.8);
	left: -10px;
}
.top-topics .up_ymd{
	font-size: 1.0rem;
	font-size: 10px;	
}*/
}






/* Pager style *******************************/
.pager{
	text-align:right;
	padding: 30px 0;
	clear:both;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
}
/*ページャーボタン*/
.pager a{
    /*border-radius: 5px 5px 5px 5px;*/
    color: #fff;
    font-size: 14px;
	letter-spacing: normal;
    padding: 7px 12px;
    text-decoration: none;
	margin:0 0 0 7px;
	border-radius: 2px;
	background-color: #777;
}

/*現在のページのボタン*/
.pager a.current{
    background-color: #f29600;
    color: #fff;
}

.pager a:hover{
    background-color: #000;
    color: #fff;
	text-decoration: none;
}
.pager a:hover.current{
	background-color: #f29600;
}

.overPagerPattern{
	padding:0 2px;	
}

@media screen and (max-width: 767px) {
.pager{
	text-align:center;
}

/*ページャーボタン*/
.pager a{
    font-size: 12px;
	margin:0 0 0 5px;
}

/*現在のページのボタン*/
.pager a.current{
    font-size: 12px;
	margin:0 0 0 5px;
}
}




/********************************************************

topics-detail.php

*********************************************************/

#up_ymd{
	display: inline-block;
	font-size:14px;
	color: #1a274d;
	margin:0 0 0 12px;
	padding: 0 0 0;
}

.topics-detail #up_ymd{
	position: relative;
	display: block;
	text-align: right;
	margin: 0 0 0.6em;
	padding: 24px 0 0;
	border-top: 1px solid #ccc;
}

.detailUpfile{
	margin:5px 0 35px;
	text-align:left;
}

#detail .detailUpfile img{
	max-width:100%;
	height:auto;
	padding: 0 0 0 5px; /*4% 0*/
	vertical-align: middle;
}
#detail{
	font-size: 1.6rem;
	font-size: 16px;
	letter-spacing: normal;
	line-height: 2.0em;
	padding: 50px 0 8%;
}
#detail font{
	line-height: 1.8em;
}

#detail b{
	font-weight: bold;
}

#detail a{
	color: #004da0;
	text-decoration: underline;
}
#detail a:hover{
	text-decoration: none;
}
.page_cate{
	display: inline-block;
	font-size: 15px;
	font-size: clamp(12px, 1.5vw, 15px);
	color: #fff;
	margin: 0 0 1em;
	padding: 0.2em 1.5em;
	background-color: #004da0;
}
.page_cate a{
	color: #fff;
	background-color: #000;
	padding: 8px 15px 5px;
}
.page_cate a:hover{
	background-color: #7898cb;
}
.youtube{
	margin: 4% auto;
}


@media screen and (max-width: 1000px) {
h1.h1_detail{
	font-size: 2.4rem;
	font-size: 24px;
	margin: 40px 0 2.5em;
}

h1.h1_detail:before,
h1.h1_detail:after{
	width: 40px;
	height: 61px;
}
h1.h1_detail:before{
	top: -25px;
}
h1.h1_detail:after{
	bottom: -25px;
}

#up_ymd{
	font-size: 13px;
}
#detail{
	font-size: 1.5rem;
	font-size: 15px;
	padding: 30px 0 10%;
}

.page_cate{
	font-size: 1.1rem;
	font-size: 11px;
}
}



@media screen and (max-width: 767px) {
h1.h1_detail{
	font-size: 2.0rem;
	font-size: 20px;
	margin: 20px 0 2em;
}
h1.h1_detail:before,
h1.h1_detail:after{
	width: 30px;
	height: 46px;
}
h1.h1_detail:before{
	top: -15px;
}
h1.h1_detail:after{
	bottom: -15px;
}

#up_ymd{
	font-size:11px;
}
#detail{
	font-size: 1.4rem;
	font-size: 14px;
	padding: 25px 0 12%;
}
.page_cate{
	font-size: 1.0rem;
	font-size: 10px;
}
.page_cate a{
	padding: 5px 10px 2px;
}
}



/* btn_return *****************/
.btn_return{
	text-align: center;
}
.btn_return a{
	display: block;
	font-family: 'Lato', sans-serif;
	font-size: 1.4rem;
	font-size: 14px;
	color: #000;
	width: 40%;
	max-width: 240px;
	padding: 12px 0;
	margin: 0 auto;
	border: 1px solid #000;
}
.btn_return a:hover{
	color: #fff;
	background-color: #000;
}

@media screen and (max-width: 767px) {
.btn_return a{
	font-size: 1.2rem;
	font-size: 12px;
}
}






/*************************************************************************************
*************************************************************************************

print

*************************************************************************************
**************************************************************************************/

@media print {

}