@charset "UTF-8";
/* CSS Document */
header h1.pageTit .fen_sb{
	font-size: 0.17rem;
	letter-spacing: 0.1em;
}

#container{padding-top: 30px;}
#container.areport.post{padding-top: 10px;}

/*actList
=============================*/
.actList > li + li{margin-top: 50px;}
.actList li .noiseArea .ph{
  aspect-ratio: 256/205;
  width: calc((256/390)*100%);
  margin-left: auto;
}
/* .actList li .noiseArea .noiseLines {width: calc(100% - (((256*0.5)/390)*100%));} */
.actList li .noiseArea .noiseLines {width: calc(100% - ((256/390)*100%));}


.actList li .detailArea {
  margin-top: 25px;
  padding: 0 10px;
}
/* .areport.index .actList .detailArea > *{border: 1px solid #000;} */
.actList li .detailArea > *{width: 100%;}
.actList li .detailArea .grid01 {order: 1;}
.actList li .detailArea .grid02 {order: 5;}
.actList li .detailArea .grid03 {order: 2;}
.actList li .detailArea .grid04 {order: 3;}
.actList li .detailArea .grid05 {order: 4;}
.actList li .detailArea .grid06 {order: 6; margin-top: 25px;}

.actList .detailArea .data{
  width: fit-content;
  font-size: 0.1rem;
  letter-spacing: 0.1em;
  margin-right: auto;
}
.actList .detailArea .tagList{
  font-size: 0.13rem;
  letter-spacing: 0.1em;
  margin-top: 1.25em;
  column-gap: 1em;
  row-gap: 0.5em;
}
.actList .detailArea .likeBt{width: fit-content;}
.actList .detailArea .likeBt a{
  font-size: 0.10rem;
  letter-spacing: 0.1em;
  text-decoration: underline;
}

.actList .detailArea h3{
  font-size: 0.18rem;
  letter-spacing: 0.2em;
  line-height: calc(31/18);
  margin-top: 0.5em;
}
.areport.index #main .actList li .detailArea h3{
  font-size: 0.20rem;
  letter-spacing: 0.2em;
}
.areport.index #main .actList li .detailArea .txt{
  font-size: 0.12rem;
  letter-spacing: 0.1em;
  line-height: calc(21/12);
  margin-top: 1em;
}
.actList li .detailArea .phColor{
  width: fit-content;
}
.actList li .detailArea .phColor li{
  width: 10px;
  height: 10px;
  margin-right: 10px;
}
.actList li .detailArea .bt_more{
  margin-left: auto;
}



.pnav{
  padding: 0 10px;
	font-size: 0.15rem;
	letter-spacing: 0.1em;
}


.pnav{
  padding: 0 10px;
	font-size: 0.15rem;
	letter-spacing: 0.1em;
}
.pnav .wpnav{width: 100%;}
.pnav .wpnav .wp-pagenavi{
	display: flex;
	width: 100%;
}
.pnav .wpnav .wp-pagenavi > *{
	margin-right: 0.5em;
	padding: 2px 0;
}
.pnav .wpnav .wp-pagenavi .previouspostslink,
.pnav .wpnav .wp-pagenavi .nextpostslink{
	color: rgba(0,0,0,0.3);
	order: 10;
	margin-right: 0;
}
.pnav .wpnav .wp-pagenavi .previouspostslink{
	margin-left: auto;
	margin-right: 2em;
	position: relative;
}
.pnav .wpnav .wp-pagenavi .previouspostslink::before{
	content: '';
	width: 1px;
	height: 100%;
	position: absolute;
	top:0;
	right: -1em;
	background: #000;
}
.pnav .wpnav .wp-pagenavi .pages,
.pnav .wpnav .wp-pagenavi .first,
.pnav .wpnav .wp-pagenavi .last{
	display: none;
}
.pnav .wpnav .wp-pagenavi li + li{
	margin-left: 0.5em;
}
.pnav .wpnav .wp-pagenavi a{
	color: rgba(0,0,0,0.3);
	background-image: linear-gradient(#000, #000);
  background-position: 0% 100%;
  background-repeat: no-repeat;
	transition: background 0.35s ease;
	background-size: 0% 1px;
}
.pnav .wpnav .wp-pagenavi a:hover{
	color: rgba(0,0,0,1);
	background-size: 100% 1px;
}

.pnav .wpnav .wp-pagenavi a.previouspostslink,
.pnav .wpnav .wp-pagenavi a.nextpostslink{
	background-size: 0% 2px;
	color: rgba(0,0,0,1);
}
.pnav .wpnav .wp-pagenavi a.previouspostslink:hover,
.pnav .wpnav .wp-pagenavi a.nextpostslink:hover{
	background-size: 100% 2px;
}


.pnav .wpnav li + li{
	margin-left: 0.5em;
}
.pnav .wpnav li a{
	color: rgba(0,0,0,0.3);
}
.pnav .wpnav li a:active{
	color: rgba(0,0,0,1);
}

.pnav .pnav_np{margin-left: auto;}
.pnav .pnav_np li:first-child{
  padding-right: 1em;
	margin-right: 1em;
	border-right: 1px solid #000;
}
.pnav .pnav_np li span.noLink{
  opacity: 0.5;
}




/* .postContents
=============================*/
.postContents{
	font-size: 0.14rem;
	line-height: calc(32/14);
	letter-spacing: 0.1em;
	padding: 0 10px;
}
.postContents img{
	max-width: 100% !important;
	height: auto !important;
}
.postContents > *{
	margin-top: 35px;
}
.postContents > .phBox > div .ph{
	width: 100%;
}

.postContents > .phBox{
}
.postContents > .phBox > div{
}
.postContents > .phBox > div .ph + .ph{
	margin-top: 15px;
}

.postContents figure{margin-top: 1.5em;}
.postContents > *:first-child{
	margin-top: 0;
}
.postContents h1,
.postContents h2{
	font-size: 0.21rem;
	margin-top: 3em;
}
.postContents h3{
	font-size: 0.18rem;
	margin-top: 4em;
	border-left: 3px solid rgba(0,0,0,0.2);
	padding-left: 1em;
}
.postContents h4{
	font-size: 0.16rem;
	border-bottom: 1px solid rgba(0,0,0,0.2);
	padding-bottom: 0.5em;
	margin-top: 4em;
}
.postContents h5{
	font-size: 0.16rem;
	margin-top: 4em;
}
.postContents p a{
  display: inline;
  background-image: linear-gradient(90deg,#000 0%, #000 50%, #CCC 50%,#CCC 100%);
  background-size: 200% 1px;
	background-position: 100% 100%;
  background-repeat: no-repeat;
	transition: background-position 0.35s ease;
	padding: 2px 0;
}
.postContents p a:active{
	background-position: 0% 100%;
}

.postContents figure.wp-block-image{
}
.postContents iframe{
	aspect-ratio: 16/9;
	width: 100%!important;
	max-width: 800px;
	height: auto!important;
	margin-left: auto;
	margin-right: auto;
}

.postContents figure.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
	aspect-ratio: 16/9;
	width: 100%;
	height: 100%;
}
/*引用*/
.postContents .wp-block-quote{
	text-align: center;
	background: var(--gray_e0);
	padding: 1em;
	isolation: isolate;
}


/*目次*/
.postContents #toc_container {
	width: 100%!important;
	background: none!important;
	border: 1px solid var(--LINE_a30)!important;
	padding: 30px 40px!important;
	margin-bottom: 0!important;
	width: auto!important;
	display: block!important;
	font-size: 0.2rem;

	/*追加*/
	isolation: isolate;
	margin-top: 50px;
	background: #FFF!important;
}
.postContents #toc_container .toc_title{
	text-align: left !important;
	font-family: "Shippori Mincho", serif !important;
	font-weight: 500!important;
	margin: 0;
	padding: 0;

	/*追加*/
}
.postContents #toc_container p.toc_title+ul.toc_list {
	margin-top: 0.5em;
}
.postContents #toc_container ul.toc_list > li:nth-child(n+2){margin-top: 1em;}
.postContents #toc_container ul.toc_list li a{
	opacity: 1;
	-webkit-transition: opacity 0.35s ease;
	transition: opacity 0.35s ease;
}
.postContents #toc_container ul.toc_list li a:active{
	opacity: 0.5;
	text-decoration: none;
}
.postContents #toc_container ul.toc_list > li > a{
	display: inline-block;
	font-family: "Shippori Mincho", serif !important;
	font-weight: 500!important;
	position: relative;
	padding-left: 1.5em;
}
.postContents #toc_container ul.toc_list > li > a .toc_number{
	position: absolute;
	top:0;
	left:0;
}
.postContents #toc_container ul.toc_list > li > a .toc_number::after{
	content: '.';
}
.postContents #toc_container ul.toc_list > li > ul > li .toc_number{display: none;}
.postContents #toc_container ul.toc_list > li ul{margin-left: 0;}
.postContents #toc_container ul.toc_list > li > ul{margin-left: 1.5em;}
.postContents #toc_container ul.toc_list li ul li a{
	color: var(--BASE);
	display: inline-block;
	position: relative;
	padding-left: 1em;
}

.postContents #toc_container ul.toc_list li ul li a::before{
	content: '';
	width: 8px;
	height: 8px;
	display: block;
	-webkit-mask-image: url('../img/icon_arrow.svg');
	mask-image: url('../img/icon_arrow.svg');
	mask-size: 100% 100%;
	position: absolute;
	left:0;
	top:12px;
	background: var(--BL03);
}
.postContents #toc_container ul.toc_list > li > ul li a{
	font-size: 0.16rem;
}

.postContents > ol{list-style: decimal;}
.postContents > ul > li{
	margin-left: 1.5em;
	position: relative;
}
.postContents > ul > li::before{
	content: '●';
	position: absolute;
	top:0;
	left:-1.25em;
	color: var(--gray_e0);
}
.postContents > ol > li{margin-left: 1.5em;}

.postContents a.wp-block-file__button,
.postContents a.wp-block-button__link{
	font-size: 0.15rem;
	background: var(--gray_e0);
	color: #000;
	padding: 0.5em 1em;
	filter: blur(0);
}
.postContents a.wp-block-file__button:active,
.postContents a.wp-block-button__link:active{
	filter: blur(6px);
}


.postContents .postContents .has-white-color {
  background: #FFF;
}
.postContents .has-white-background-color {
  background: #FFF;
}
.postContents .has-base-color {
  background: #57667B;
}
.postContents .has-base-background-color {
  background: #57667B;
}

.postContents .has-bl-01-color {
  background: #1673FF;
}
.postContents .has-bl-01-background-color {
  background: #1673FF;
}
.postContents .has-bl-02-color {
  background: #E7EEFF;
}
.postContents .has-bl-02-background-color {
  background: #E7EEFF;
}
.postContents .has-bl-03-color {
  background: #6084E4;
}
.postContents .has-bl-03-background-color {
  background: #6084E4;
}
.postContents .has-line-color {
  background: #C4D0E2;
}
.postContents .has-line-background-color {
  background: #C4D0E2;
}



.postContents .has-dfc01-gradient-background{
	background: linear-gradient(to right,  #cad9ff 0%,#9babff 51%,#cc7cfd 100%);
}
.postContents .has-dfc02-gradient-background{
	background: linear-gradient(to right,  #6086E6 0%,#A48DFF 67%,#C160FD 100%);
}
.postContents .has-dfc03-gradient-background{
	background: linear-gradient(45deg,  #9CA0FF 0%,#7CADF5 46%,#B2DAFF 100%);
}

/*postListBox
=============================*/
.postListBox{
	margin: 35px 0 0;
}
.postListBox h3{
	font-size: 0.16rem;
	letter-spacing: 0.1em;
	margin-bottom: 25px;
}
.postListBox + .postListBox h3{
	border-top: 1px solid rgba(0,0,0,0.2);
	padding-top:25px;
}
.postListBox .postBox{
	overflow: auto;
	padding-left: 10px;
}
.postListBox .postBox .postList{
	width: fit-content;
	column-gap: 10px;
	padding-right: 10px;
}
.postListBox .postBox .postList li{width: calc(340px * (350/390));}
.postListBox .postBox .postList li a{
	display: block;
}
.postListBox .postBox .postList li a .ph{
	aspect-ratio: 407/226;
	width: 100%;
}
.postListBox .postBox .postList li a h4{
	font-size: 0.14rem;
	letter-spacing: 0.2em;
	line-height: calc(22/14);
	margin-top: 0.5em;
}


/*=============================
  areport
=============================*/
/*areport index
=============================*/
.areport.index #main{margin-bottom: 70px;}

.areport.index .tagArea{
	margin: 0 10px 100px;
	padding: 20px 20px;
	border: 1px solid #000;
}

.areport.index .tagArea h3{
	font-size: 0.18rem;
	letter-spacing: 0.1em;
	padding-bottom: 0.75em;
	border-bottom: 1px solid #000;
	margin-bottom: 1em;
}
.areport.index .tagArea .tagList{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	gap: 0.5em 1em;
}

.areport.index .pnav{margin-top: 100px;}


/*areport post
=============================*/
.areport.post #main .noiseArea{
	aspect-ratio: 390/162;
	width: 100%;
}
.areport.post #main .titArea{margin-top: 75px;}
.areport.post #main .titArea .ph{
	aspect-ratio: 390/205;
	width: 100%;
}
.areport.post #main .titArea .txtArea{
	margin: 25px 10px 0;
	position: relative;
	column-gap: 20px;
}

.areport.post #main .titArea .txtArea .data{
  font-size: 0.1rem;
  letter-spacing: 0.1em;
}
.areport.post #main .titArea .txtArea .phColor{
	width: fit-content;
	position: absolute;
	top:0;
	right: 0;
}
.areport.post #main .titArea .txtArea .phColor li{
  width: 10px;
  height: 10px;
}
.areport.post #main .titArea .txtArea .phColor li:nth-child(n+2){
  margin-top: 10px;
}

.areport.post #main .titArea .txtArea h2{
  font-size: 0.2rem;
  letter-spacing: 0.2em;
  line-height: calc(35/20);
	padding-right: 1.5em;
	margin-top: 0.5em;
}
.areport.post #main .titArea .txtArea .tagList{
	flex: 1;
  font-size: 0.12rem;
  letter-spacing: 0.1em;
	column-gap: 1em;
	row-gap: 0.5em;
	margin-top: 25px;
}
.areport.post #main .titArea .txtArea .likeBt{
	width: fit-content;
	text-align: right;
	margin-top: 25px;
}
.areport.post #main .titArea .txtArea .likeBt a{
  font-size: 0.13rem;
  letter-spacing: 0.1em;
  text-decoration: underline;
}

.areport.post #main .txt01{
	margin: 30px 10px 0 10px;
  font-size: 0.13rem;
  letter-spacing: 0.1em;
	line-height: calc(24/13);
	padding: 20px;
	border: 1px solid #000;
}



.areport.post section{
	margin-top: 55px;
}
.areport.post section h2{margin: 0 15px;}
.areport.post section h2 .num{
	width: 35px;
	font-size: 0.2rem;
	letter-spacing: 0.1em;
	border-right: 1px solid rgba(112,112,112,1);
	line-height: calc(35/20);
}
.areport.post section h2 .jp{
	width: calc(100% - 35px);
	padding-left: 1em;
	font-size: 0.18rem;
	letter-spacing: 0.15em;
	line-height: calc(36/18);
	margin-top: -0.2em;
}
.areport.post section .noiseArea{
	aspect-ratio: 390/27;
	width: 100%;
	margin-top: 35px;
}
.areport.post section > .inner{
	margin: 40px 10px 0;
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	line-height: calc(32/14);
}
.areport.post section > .inner .txtBloc > *{
	margin-top: 3em;
}
.areport.post section > .inner .txtBloc a{
  display: inline;
  background-image: linear-gradient(90deg,#000 0%, #000 50%, #CCC 50%,#CCC 100%);
	background-position: 100% 100%;
  background-repeat: no-repeat;
	transition: background-position 0.35s ease;
	padding: 2px 0;
	background-size: 200% 1px;
}
.areport.post section > .inner .txtBloc a:hover{background-position: 0% 100%;}



.areport.post section > .inner .picBloc{
	margin-top: 50px;
}
.areport.post section > .inner .picBloc .picList li + li{
	margin-top: 20px;
}

.areport.post section > .inner .picBloc .picList li .cap{
	font-size: 0.12rem;
	letter-spacing: 0.1em;
	margin-top: 1em;
	line-height: 1.5;
}
.areport.post section > .inner .movie{margin-top: 50px;}
.areport.post section > .inner .movie iframe{
	aspect-ratio: 16/9;
	width: 100%;
	height: auto;
}

.areport.post #contents > .likeBt{
	margin-top: 50px;
	padding: 0 15px;
}
.areport.post #contents > .likeBt .icon{
	border: 1px solid #000;
	font-size: 0.17rem;
	letter-spacing: 0.1em;
	padding: 0.25em 0.5em 0.1em 0.5em;
	margin-right: 1em;
}
/* .areport.post #contents > .likeBt a{
  font-size: 0.13rem;
  letter-spacing: 0.1em;
  text-decoration: underline;
	padding-top: 0.1em;
} */


.areport.post .pnav{margin-top: 80px;}




.areport.post .rreport{
	margin-top: 45px;
}
.areport.post .rreport h2{
	margin: 0 15px;
	border-top: 1px solid rgba(112,112,112,0.2);
	padding-top: 2.5em;
	font-size: 0.18rem;
	letter-spacing: 0.1em;
}
.areport.post .actList{
	margin-top: 45px;
}

/*areport tags
=============================*/
.areport.tags #contents{padding-top: 40px;}
.areport.tags h2 {
	font-size: 0.25rem;
	letter-spacing: 0.1em;
	margin: 0 10px 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.areport.tags .pnav{margin-top: 85px;}


/*=============================
 news
=============================*/
.news #contents{padding-top: 40px;}

/* news index
=============================*/
.news.index #contents > .inner{
  padding: 0 10px;
}
.news.index .newsList li{
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
}
.news.index .newsList > li + li{
  margin-top: 20px;
}
.news.index .newsList li a .data{
  width: 100%;
  font-size: 0.1rem;
  letter-spacing: 0.1em;
	margin-bottom: 1.5em;
}
.news.index .newsList li a h3{
  width: 100%;
  font-size: 0.16rem;
  letter-spacing: 0.15em;
  line-height: calc(28/16);
}
.news.index .newsList li a .bt_more{
  font-size: 0.11rem;
  letter-spacing: 0.1em;
  padding: 1em;
  border: 1px solid #000;
  text-align: center;
	margin-left: auto;
	margin-top: 20px;
}
.news.index .pnav{
  margin-top: 50px;
}

/* news post
=============================*/
.news.post .titArea{
	margin: 0 10px 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.news.post .titArea .data{
  font-size: 0.1rem;
  letter-spacing: 0.1em;
}
.news.post .titArea h2{
  font-size: 0.18rem;
  letter-spacing: 0.2em;
	line-height: calc(31/18);
	margin-top: 0.75em;
}

.news.post .pnav{
  margin-top: 100px;
}

/*=============================
 about
=============================*/
.about #main{margin-bottom: 75px;}
.about #main .noiseArea .ph{
  aspect-ratio: 280/235;
  width: calc((280/390)*100%);
  margin-left: auto;
}
/* .about #main .noiseArea .noiseLines {width: calc(100% - (((280*0.5)/390)*100%));} */
.about #main .noiseArea .noiseLines {width: calc(100% - ((280/390)*100%));}



.about section{
	padding: 0 10px;
}
.about section + section{
	margin-top: 100px;
}
.about section:not(#bloc01) > .inner > .bt_view{
	margin-top: 60px;
	margin-left: auto;
}

.about section:not(#bloc01) h2 {
}
.about section:not(#bloc01) h2 span{display: block;}
.about section:not(#bloc01) h2 .fen_sb{
	font-size: 0.25rem;
	letter-spacing: 0.1em;
}
.about section:not(#bloc01) h2 .jp{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	border-left: 1px solid #000;
	padding: 0.2em 0 0.3em 1em;
	margin-top: 1em;
}
.about section#incb .postListBox{
	margin-top: 40px;
}
.about section#innov .postBox,
.about section#incb .postBox{
	width: calc(100% + 20px);
	margin-left: -10px;
}




.about #bloc01 .logo{
	aspect-ratio: 310/57;
	width: 310px;
	margin-left: auto;
}
.about #bloc01 .txt01{
	font-size: 0.15rem;
	letter-spacing: 0.1em;
	line-height: calc(30/15);
	margin-top: 75px;
}
.about #bloc01 .txt01 a{
	font-size: calc((18/15) * 100%);
}

.about #bloc01 .bgArea{
  background: #F7F7F7;
	padding: 35px 10px 50px;
	margin-top: 50px;
}
.about #bloc01 .zuArea{
}
.about #bloc01 .zuArea .zu01{
	position: relative;
}
.about #bloc01 .zuArea .zu01::before,
.about #bloc01 .zuArea .zu01::after{
	content: '';
	display: block;
	width: calc((90/350)*100%);
	height: calc(100% - 130px);
	background: url(../img/about/sp_about_bloc01_arrowBg.svg) no-repeat center center/100% 100%;
	position: absolute;
}
.about #bloc01 .zuArea .zu01::before{
	top:65px;
	left:0;
}
.about #bloc01 .zuArea .zu01::after{
	top:65px;
	right: 0;
	transform: rotate(180deg);
}
.about #bloc01 .zuArea .zu01 .zuTxt{
	font-size: 0.14rem;
	letter-spacing: 0.2em;
	line-height: calc(22/14);
	text-align: center;
}
.about #bloc01 .zuArea .zu01 .zuTxt01{margin-bottom: 25px;}
.about #bloc01 .zuArea .zu01 ul{
	width: fit-content;
	margin: 0 auto;
	padding: 40px 0;
	background: url(../img/about/about_bloc01_pic01.svg) no-repeat center center/66px auto;
}
.about #bloc01 .zuArea .zu01 .zuTxt02{margin-top: 25px;}

.about #bloc01 .zuArea .zu01 ul li:first-child{margin-bottom: 115px;}
.about #bloc01 .zuArea .zu01 ul li .fen_b{
	font-size: 0.2rem;
	letter-spacing: 0.1em;
	text-align: center;
}
.about #bloc01 .zuArea .zu01 ul li .jp{
	font-size: 0.14rem;
	letter-spacing: 0.2em;
	line-height: calc(22/14);
	text-align: center;
	margin-top: 0.5em;
}
.about #bloc01 .zuArea .arrow {
	height: 20px;
	border: 1px solid #000;
	border-top: none;
	position: relative;
	margin-top: 30px;
}
.about #bloc01 .zuArea .arrow img{
	width: 11px;
	height: auto;
	position: relative;
	top:100%;
	left:calc(50% - 5px);
}
.about #bloc01 .zuArea .zuTxt03{
	margin-top: 75px;
}
.about #bloc01 .zuArea .zuTxt03 span{
	display: block;
	text-align: center;
}
.about #bloc01 .zuArea .zuTxt03 .fen_b{
	font-size: 0.28rem;
	letter-spacing: 0.1em;
}
.about #bloc01 .zuArea .zuTxt03 .jp{
	font-size: 0.18rem;
	letter-spacing: 0.1em;
	text-decoration: underline;
	margin-top: 0.75em;
}
.about #bloc01 .zuArea .zuTxt03 .jp{
	font-size: 0.19rem;
	letter-spacing: 0.1em;
	text-decoration: underline;
}


.about #mk3 {margin-top: 80px;}
.about #mk3 h2{margin-bottom: 50px;}
/* .about #mk3 > .inner > .logo{order:4;}
.about #mk3 > .inner > .txtArea{order:3;} */
.about #mk3 .txtArea{
}
.about #mk3 .txtArea h3{
	font-size: 0.21rem;
	letter-spacing: 0.1em;
	text-decoration: underline;
	margin-top: 1.5em;
}
.about #mk3 .txtArea .txt{
	font-size: 0.15rem;
	letter-spacing: 0.1em;
	line-height: calc(30/15);
	margin-top: 2em;
}
.about #mk3 .logo{
	aspect-ratio: 356/86;
	width: calc((356/370)*100%);
	margin-left: auto;
	margin-right: auto;
}


.about #mvv .mvvList{
	margin-top: 45px;
}
.about #mvv .mvvList li + li{
	border-top: 1px solid rgba(0,0,0,0.2);
	margin-top: 45px;
	padding-top: 45px;
}
.about #mvv .mvvList li > * + *{}
.about #mvv .mvvList li h3,
.about #mvv .mvvList li h4{text-align: center;}
.about #mvv .mvvList li .txt{}

.about #mvv .mvvList li h3{column-gap: 1em;}
.about #mvv .mvvList li h3 .fen_sb{
	font-size: 0.20rem;
	letter-spacing: 0.1em;
}
.about #mvv .mvvList li h3 .jp{
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	padding-bottom: 0.25em;
}
.about #mvv .mvvList li h4{
	font-size: 0.17rem;
	letter-spacing: 0.1em;
	line-height: calc(32/17);
	margin-top: 1em;
}

.about #mvv .mvvList li h4 span{

}
.about #mvv .mvvList li .txt{
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(27/14);
	padding: 0 20px;
	margin-top: 2em;
}


/*=============================
 sol
=============================*/
/*sol index
=============================*/
.sol.index #contents{padding-top: 40px;}
.sol.index section + section{margin-top: 50px;}

.sol.index section h2 {margin: 0 10px;}
.sol.index section h2 span{display: block;}
.sol.index section h2 .fen_sb{
	font-size: 0.25rem;
	letter-spacing: 0.1em;
}
.sol.index section h2 .jp{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	line-height: calc(24/14);
	border-left: 1px solid #000;
	padding: 0em 0 0em 1em;
	margin-top: 0.5em;
}


.sol.index section .postList{
	margin-top: 45px;
	padding: 0 10px;
}
.sol.index section .postList > li{
	padding-top: 35px;
	border-top: 1px solid rgba(0,0,0,0.2);
}
.sol.index section .postList > li + li{
	margin-top: 55px;
}

.sol.index section .postList li .noiseArea{
	width: calc(100% + 20px);
	margin-left: -10px;
	order: 1;
}
.sol.index section .postList li .noiseArea .ph{
  aspect-ratio: 255/205;
  width: calc((255/390)*100%);
  margin-left: auto;
}
/* .sol.index section .postList li .noiseArea .noiseLines {width: calc(100% - (((255*0.65)/390)*100%));} */
.sol.index section .postList li .noiseArea .noiseLines {width: calc(100% - ((255/390)*100%));}

.sol.index section .postList li .txtArea{
	order: 2;
	margin-top: 20px;
}
/* .sol.index section .postList li .txtArea > *{border: 1px solid #000;} */
/* .sol.index section .postList li .txtArea > h3 {width: max(calc((360/1250)*100%), 360px);margin-right: auto;}
.sol.index section .postList li .txtArea > h4 {width: min(calc((440/1250)*100%), calc(100% - 360px - ((440/1250)*100%)));margin-right: auto;}
.sol.index section .postList li .txtArea > div{width: min(calc((265/1250)*100%), calc(100% - 360px - ((265/1250)*100%)));} */

.sol.index section .postList li .txtArea > h3 span{display: block;}
.sol.index section .postList li .txtArea > h3 .fen_b{
	font-size: 0.18rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}
.sol.index section .postList li .txtArea > h3 .jp{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-top: 0.5em;
}
.sol.index section .postList li .txtArea > h4{
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(25/13);
	margin-top: 1.5em;
}
.sol.index section .postList li .txtArea dl{
	width: fit-content;
	grid-template-columns: max-content 1fr;
	font-size: 0.1rem;
	letter-spacing: 0.1em;
	line-height: calc(17/10);
	margin-top: 2em;
}
.sol.index section .postList li .txtArea .bt_more{
	margin-top: 35px;
	margin-left: auto;
}





/*sol post
=============================*/
.sol.post #main .noiseArea{
	aspect-ratio: 390/65;
	width: 100%; 
}
.sol.post #main .titArea{
	margin-top: 40px;
}
/*row-start / column-start / row-end / column-end*/
/* .sol.post #main .titArea > *{ border: 1px solid #000;} */
.sol.post #main .titArea .grid01 {grid-area: 1 / 1 / 2 / 3; padding-left: 10px;}
.sol.post #main .titArea .grid02 {
	grid-area: 2 / 1 / 3 / 3;
  aspect-ratio: 393/205;
  width: 100%;
	margin-top: 25px;
}
.sol.post #main .titArea .grid03 {grid-area: 3 / 2 / 4 / 3; padding: 0px 10px 0 0px; margin-top: 30px;}
.sol.post #main .titArea .grid04 {grid-area: 3 / 1 / 4 / 2; padding: 0px 30px 0 10px; margin-top: 30px;}

.sol.post #main .titArea h2 span{display: inline-block;}
.sol.post #main .titArea h2 .fen_b{
	font-size: 0.28rem;
	letter-spacing: 0.1em;
	line-height: calc(45/36);
}
.sol.post #main .titArea h2 .jp{
	font-size: 0.16rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	margin-top: 0.5em;
}
.sol.post #main .titArea .phColor{
	width: fit-content;
	margin-left: auto;
}
.sol.post #main .titArea .phColor li{
  width: 10px;
  height: 10px;
}
.sol.post #main .titArea .phColor li:nth-child(n+2){margin-top: 10px;}

.sol.post #main .titArea .txt01{
	font-size: 0.13rem;
  letter-spacing: 0.1em;
	line-height: calc(30/15);
}



.sol.post .noiseArea01{
	aspect-ratio: 390/20;
	width: 100%;
	margin-top: 100px;
}
.sol.post .noiseArea02{
	aspect-ratio: 390/30;
	width: 100%;
	margin-top: 100px;
}


.sol.post .numList{
	margin: 50px 10px 0;
}
.sol.post .numList > li{
	border-top: 1px solid rgba(0,0,0,0.2);
	padding-top: 45px;
}
.sol.post .numList > li + li{
	margin-top: 45px;
}
.sol.post .numList > li h4 .num{
	width: 35px;
	font-size: 0.2rem;
	letter-spacing: 0.1em;
	border-right: 1px solid rgba(112,112,112,1);
	line-height: calc(35/20);
}
.sol.post .numList > li h4 .jp{
	width: calc(100% - 35px);
	padding-left: 1em;
	font-size: 0.18rem;
	letter-spacing: 0.15em;
	line-height: calc(36/18);
	margin-top: -0.2em;
}



.sol.post .numList > li .txt01{
	font-size: 0.14rem;
  letter-spacing: 0.15em;
	line-height: calc(24/14);
	margin-top: 1em;
}
.sol.post .numList > li .list{
	margin-top: 45px;
	padding: 0 25px;
}
.sol.post .numList > li .list li{
}
.sol.post .numList > li .list li + li{
	border-top: 1px solid rgba(0,0,0,0.2);
	padding-top: 40px;
	margin-top: 40px;
}
.sol.post .numList > li .list li .inner{
}
.sol.post .numList > li .list > li .inner .pic{
  aspect-ratio: 315/251;
	width: 100%;
}
.sol.post .numList > li .list > li .inner h5{
  font-size: 0.16rem;
	letter-spacing: 0.1em;
	line-height: calc(36/18);
	margin-top: 1em;
}
.sol.post .numList > li .list > li .inner .txt02{
  font-size: 0.12rem;
	letter-spacing: 0.1em;
	line-height: calc(20/12);
	margin-top: 1em;
}


.sol.post .movie{
	margin: 75px 10px 0;
}
.sol.post .movie iframe{
	aspect-ratio: 16/9;
	width: 100%;
	height: auto;
}


.sol.post .jirei{
	margin: 60px 10px 0;
}
.sol.post .jirei h3{
	font-size: 0.21rem;
	letter-spacing: 0.1em;
	border-bottom: 1px solid rgba(0,0,0,0.2);
	padding-bottom: 1.5em;
}
.sol.post .jirei .list{
}
.sol.post .jirei .list li{
	padding: 30px 0;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.sol.post .jirei:not(:has(+ .copr)):not(:has(+ .info)) .list li:last-child{border-bottom: none;}

.sol.post .jirei .list li .ph{
	aspect-ratio: 371/205;
	width: 100%;
}
.sol.post .jirei .list li .txtArea{
	margin-top: 20px;
	
}
.sol.post .jirei .list li .txtArea h4{
	font-size: 0.16rem;
	letter-spacing: 0.05em;
	line-height: calc(32/22);
}
.sol.post .jirei .list li .txtArea .txt{
	font-size: 0.12rem;
	letter-spacing: 0.1em;
	line-height: calc(25/12);
	margin-top: 1em;
	padding-right: 40px;
}
.sol.post .jirei .list li .txtArea .bt_more{
	margin-top: 35px;
	margin-left: auto;
}

.sol.post .copr{
	margin: 0px 10px;
	padding: 30px 0;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.sol.post .copr h3{
	font-size: 0.19rem;
	letter-spacing: 0.1em;
	line-height: calc(40/22);
}
.sol.post .copr .txt{
	font-size: 0.12rem;
	letter-spacing: 0.1em;
	line-height: calc(25/12);
	margin-top: 2em;
}

.sol.post .info{
	margin: 0px 10px;
	padding-top: 30px;
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(29/13);
}
.sol.post .info h3{
	margin-bottom: 0.5em;
}
.sol.post .info a{
  display: inline;
  background-image: linear-gradient(90deg,#000 0%, #000 50%, #CCC 50%,#CCC 100%);
	background-position: 100% 100%;
  background-repeat: no-repeat;
	transition: background-position 0.35s ease;
	padding: 2px 0;
	background-size: 200% 1px;
}
.sol.post .info a:hover{background-position: 0% 100%;}


.sol.post .postListBox h3{
	margin-left: 10px;
	margin-right: 10px;
}
/*=============================
 pjt
=============================*/
/*pjt index
=============================*/
.pjt.index .pjtList > li + li{margin-top: 70px;}
.pjt.index .pjtList li .noiseArea .ph{
  aspect-ratio: 256/205;
  width: calc((256/390)*100%);
  margin-left: auto;
}
.pjt.index .pjtList li .noiseArea .noiseLines {width: calc(100% - ((256/390)*100%));}

.pjt.index .pjtList li .detailArea {
	margin-top: 35px;
	padding: 0 10px;
}
.pjt.index .pjtList li .detailArea .txtArea{
}
.pjt.index .pjtList li .detailArea .txtArea h3{
	font-size: 0.22rem;
	letter-spacing: 0.1em;
	line-height: calc(34/22);
}
.pjt.index .pjtList li .detailArea .txtArea .txt{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	line-height: calc(25/14);
	margin-top: 1em;
}



.pjt.index .pjtList li .detailArea .btArea{
	margin-top: 35px;
}
.pjt.index .pjtList li .detailArea .btArea .bt_more{
	order: 2;
}
.pjt.index .pjtList li .detailArea .btArea .phColor{
	order: 1;
	width: fit-content;
	margin-right: auto;
	margin-top: 45px;
}
.pjt.index .pjtList li .detailArea .btArea .phColor li{
  width: 10px;
  height: 10px;
  margin-right: 10px;
}

.pjt.index .pnav{margin-top: 60px;}

/*pjt post
=============================*/
.pjt.post #main .noiseArea{
	aspect-ratio: 1280/90;
	width: 100%;
	max-height: 90px;
}
.pjt.post #main .titArea .ph{
	aspect-ratio: 1280/492;
	width: 100%;
}
.pjt.post #main .titArea .txtArea{
	margin: 15px 15px 0;
	position: relative;
}

.pjt.post #main .titArea .txtArea .phColor{
	position: absolute;
	top:20px;
	right: 0;
	width: fit-content;
}
.pjt.post #main .titArea .txtArea .phColor li{
  width: 10px;
  height: 10px;
}
.pjt.post #main .titArea .txtArea .phColor li:nth-child(n+2){
  margin-top: 10px;
}
.pjt.post #main .titArea .txtArea h2{
  font-size: 0.36rem;
  letter-spacing: 0.1em;
  line-height: calc(64/33);
	padding-right: 50px;
}
.pjt.post #main .titArea .txt{
	font-size: 0.18rem;
  letter-spacing: 0.1em;
	line-height: calc(33/18);
	margin-top: 1em;
	padding-right: 50px;
}



.pjt.post section{
	margin-top: 100px;
}
.pjt.post section h2{margin: 0 15px;}
.pjt.post section h2 .num{
	width: 55px;
	font-size: 0.23rem;
	letter-spacing: 0.1em;
	border-right: 1px solid rgba(112,112,112,1);
	line-height: calc(35/23);
	padding: 0.1em 0;
}
.pjt.post section h2 .jp{
	width: calc(100% - 55px);
	padding-left: 1em;
	font-size: 0.27rem;
	letter-spacing: 0.2em;
	line-height: calc(47/27);
	margin-top: -0.25em;
}
.pjt.post section .noiseArea{
	aspect-ratio: 1280/23;
	width: 100%;
	max-height: calc(23px * (1440/1280));
	margin-top: 60px;
}
.pjt.post section > .inner{
	width: max(calc((1000/1280)*100%), 1000px);
	margin: 70px 15px 0;
	font-size: 0.15rem;
	letter-spacing: 0.2em;
	line-height: calc(37/15);
}
@media screen and (max-width:1030px) {
	.pjt.post section > .inner{width: calc(100% - 30px);}
}
.pjt.post section > .inner .phC{
	margin-top: 75px;
	column-gap: 20px;
	row-gap: 20px;
}
.pjt.post section > .inner > p{
	margin-top: 3em;
}

.pjt.post .info{
	margin: 55px 15px 0;
	padding: 55px 0;
	border-top: 1px solid rgba(0,0,0,0.2);
	border-bottom: 1px solid rgba(0,0,0,0.2);
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(25/13);
}

.pjt.post .pnav{margin-top: 85px;}


/*=============================
lab
=============================*/
.lab #contents{padding-top: 40px;}
.lab section{
	margin: 0 10px;
}
.lab section + section{
	margin: 50px 10px 0;
	padding-top: 35px;
	border-top: 1px solid rgba(0,0,0,0.2);
}

.lab section.numBloc .txt01{
	font-size: 0.18rem;
	letter-spacing: 0.15em;
	line-height: calc(36/18);
	margin-bottom: 50px;
}
.lab section.numBloc .numBox .logoArea{
}
.lab section.numBloc .numBox .logoArea h2 .num{
	width: 35px;
	font-size: 0.19rem;
	letter-spacing: 0.1em;
	padding-top: 0.1em;
}
.lab section.numBloc .numBox .logoArea h2 .jp{
	width: calc(100% - 35px);
	font-size: 0.29rem;
	letter-spacing: 0.1em;
	border-left: 1px solid #000;
	padding-left: 0.5em;
	padding-bottom: 0.2em;
}
.lab section.numBloc .numBox .logoArea h2 .txt{
	width: 100%;
	font-size: 0.17rem;
	letter-spacing: 0.1em;
	margin-top: 0.75em;
}
.lab section.numBloc .numBox .logoArea .logo{
	width: calc((160/370)*100%);
	height: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 35px;
}
.lab section.numBloc .numBox .logoArea .logo img{

}


.lab section.numBloc .numBox .txtPhArea{
	border-top: 1px solid rgba(0,0,0,0.2);
	margin:50px 30px 0;
	padding-top: 45px;
}
.lab section.numBloc .numBox .txtPhArea h3{
	font-size: 0.16rem;
	letter-spacing: 0.1em;
	line-height: calc(28/17);
}
.lab section.numBloc .numBox .txtPhArea .txt{
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(23/13);
	margin-top: 1.5em;
}
.lab section.numBloc .numBox .txtPhArea .ph{
	aspect-ratio: 315/210;
	width: 100%;
	margin-top: 30px;
}


.lab section .featBox{
	margin: 50px 30px 0;
	padding-top: 35px;
	border-top: 1px solid rgba(0,0,0,0.2);
}
.lab #mk3 .featBox {margin: 50px 0px 0;}

.lab section .featBox h3{
	font-size: 0.27rem;
	letter-spacing: 0.15em;
	margin-bottom: 40px;
}
.lab section .featBox > .inner{
	width: calc(100% + 20px + 60px);
	margin-left: -40px;
	overflow: auto;
	padding-left: 40px;
	margin-top: 40px;
}
.lab #mk3 .featBox > .inner {
	width: calc(100% + 20px);
	margin-left: -10px;
	padding-left: 30px;
}

.lab section .featBox .featList{
	width: fit-content;
	column-gap: 70px;
	padding-right: 40px;
}
.lab #mk3 .featBox .featList{
	padding-right: 30px;
}


.lab section .featBox .featList li{
	width: 258px;
	position: relative;
}
.lab section .featBox .featList li + li::before{
	content: '';
	width: 1px;
	height: 100%;
	display: block;
	background: rgba(0,0,0,0.2);
	position: absolute;
	top:0;
	left:-35px;
}

.lab section .featBox .featList li .pic{
	aspect-ratio: 315/210;
	width: 100%;
}
.lab section .featBox .featList li .txt{
	font-size: 0.12rem;
	letter-spacing: 0.1em;
	line-height: calc(25/12);
	margin-top: 1.5em;
}



.lab #mk3 .logo{
	aspect-ratio: 294/71;
	width: calc((294/390)*100%);
	margin-left: auto;
}
.lab #mk3 .txtArea{
	width: 100%;
	margin-top: 70px;
}
.lab #mk3 .txtArea h2{
	font-size: 0.2rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}
.lab #mk3 .txtArea .txt{
	font-size: 0.14rem;
	letter-spacing: 0.1em;
	line-height: calc(27/14);
	margin-top: 1em;
}

.lab #mk3 .ph {
	aspect-ratio: 363/250;
	width: 100%;
	margin-top: 40px;
}




.lab #access h2{
	font-size: 0.18rem;
	letter-spacing: 0.2em;
	width: 100%;
	margin-bottom: 35px;
}
.lab #access .txt{
	font-size: 0.13rem;
	letter-spacing: 0.1em;
	line-height: calc(25/13);
	width: fit-content;
	margin-right: auto;
}
.lab #access .pic{
	aspect-ratio: 361/216;
	width: 100%;
	margin-top: 40px;
}