@charset "utf-8";
/*
Theme Name: CRESTクリプトマス
Theme URI: 
Description: CRESTクリプトマス
*/

/* basic setting */
html{ font-size:62.5%; }
html, body{ position:relative; width:100%; height:100%; }
body{ -webkit-text-size-adjust: 100%; }
body{
  margin:0;
  padding:0;
  font-size:1.6rem;
  font-family: "游ゴシック", YuGothic, Arial, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height:1.6;
  color:#000;
  background:#fff;
  word-break:break-word;
}
body.bgfill{
  background:#F4FAFF;
}

h1,h2,h3,h4,h5,h6,p,em,pre,th,td,blockquote{margin:0; padding:0; font-size:1.6rem}
img,table{border:0; vertical-align:bottom}
img{max-width:100%; height:auto; image-rendering:-webkit-optimize-contrast;}
form,ul,dl,ol{margin:0; padding:0}
li{list-style:none}
li,dt,dd{font-size:1.6rem}
a, a:visited{color:#000;text-decoration:none;}
input[type="submit"],input[type="button"],button{cursor:pointer}
@media screen and (min-width:769px){
  a,input[type="submit"],input[type="button"],button{transition-duration:0.4s}
  a:hover,input[type="submit"]:hover,input[type="button"]:hover,button:hover{opacity:0.7}
  a[href^="tel"]{pointer-events:none}
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{display: block; margin:0; padding:0}
.clr{clear:both}
.cf:after{content:""; display:block; clear:both}
input[type="submit"]{-webkit-appearance: none}

input:invalid, input:focus, textarea:focus{
  outline:none;
  box-shadow:none;
}

/* text style */
.fbold{font-weight:700 !important}
.fnormal{font-weight:bold !important}
.talcnt{text-align:center !important}
.tallf{text-align:left !important}
.talrg{text-align:right !important}

/* header */
header.top_header{
  background:linear-gradient(-50deg, #19ADD0, #290EBA);
}
header.top_header > .inner{
  max-width:1366px;
  margin:0 auto;
  display:flex;
  flex-direction:row-reverse;
}
header.top_header > .inner h1{
  width:calc(100% - 83px);
}
header.top_header > .inner .sns{
  width:83px;
  position:relative;
}
header.top_header > .inner .sns .sns_inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  position:absolute;
  top:50%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
}
header.top_header > .inner .sns p{
  width:18px;
}
header.top_header > .inner .sns a{
  display:block;
  width:24px;
  margin-top:10px;
}
header.top_header .news{
  max-width:1120px;
  margin:0 auto;
  padding:49px 20px 41px;
}
header.top_header .news h3{
  width:90px;
  float:left;
}
header.top_header .news dl{
  margin:0 0 0 237px;
  padding:20px 0 0;
}
header.top_header .news dl dt,
header.top_header .news dl dd{
  font-size:1.4rem;
  font-weight:bold;
  color:#fff;
}
header.top_header .news dl dt{
  float:left;
}
header.top_header .news dl dd{
  margin:0 0 16px 130px;
}
header.top_header .news dl dd a,
header.top_header .news dl dd a:visited{
  color:#fff;
}
header.top_header .news .more{
  text-align:right;
  padding-right:40px;
}

header:not(.top_header){
  background:#fff;
}
header:not(.top_header) > .inner{
  max-width:1200px;
  margin:0 auto;
  padding:33px 20px 56px;
}
header:not(.top_header) > .inner h1{
  width:291px;
}

header .menu{
  position:absolute;
  top:0;
  right:0;
}
header nav .menu_close{
  position:fixed;
  top:0;
  right:0;
}
header .menu a,
header nav .menu_close a{
  display:block;
  width:82px;
  height:82px;
  background:linear-gradient(-45deg, #19ADD0, #290EBA);
  position:relative;
}
header nav .menu_close a{
  text-indent:-100px;
  overflow:hidden;
}
header .menu a::before,
header .menu a::after,
header nav .menu_close a::before,
header nav .menu_close a::after{
  content:"";
}
header .menu a span,
header .menu a::before,
header .menu a::after,
header nav .menu_close a::before,
header nav .menu_close a::after{
  display:block;
  width:36px;
  height:1px;
  background:#fff;
  position:absolute;
  left:23px;
}
header .menu a span{
  top:41px;
  text-indent:-100px;
  overflow:hidden;
}
header .menu a::before{
  top:25px;
}
header .menu a::after{
  top:57px;
}
header nav .menu_close a::before{
  top:41px;
  transform:rotate(-45deg);
}
header nav .menu_close a::after{
  top:41px;
  transform:rotate(45deg);
}

header nav{
  width:100%;
  max-height:100%;
  background:linear-gradient(90deg, #290EBA, #19ADD0);
  overflow:auto;
  position:fixed;
  top:0;
  left:0;
  z-index:800;
  display:none;
  opacity:0;
}
header nav > .inner{
  max-width:1200px;
  margin:0 auto;
  padding:200px 40px 120px;
}
header nav .inner > ul{
  display:flex;
  flex-wrap:wrap;
}
header nav .inner > ul > li{
  min-width:176px;
  margin:0 100px 80px 0;
  font-size:2.7rem;
  font-weight:bold;
}
header nav .inner > ul > li:last-child{
  margin-right:0;
}
header nav .inner > ul > li .small{
  font-size:1.5rem;
  margin-left:0.5em;
  opacity:0.6;
}
header nav .inner > ul > li ul{
  padding-left:30px;
}
header nav .inner > ul > li li{
  font-size:2rem;
  font-weight:bold;
  margin-top:5px;
}
header nav .inner > ul > li li .small{
  font-size:1.3rem;
  margin-left:0;
  opacity:1;
}
header nav a, header nav a:visited{
  color:#fff;
}
header nav .sns{
  display:none;
}

/* footer */
footer .bnr{
  margin-bottom:150px;
}
footer .bnr ul{
  display:flex;
  justify-content:center;
  margin-bottom:40px;
}
footer .bnr ul li{
  max-width:250px;
  margin:0 40px;
}
footer .bg{
  padding:50px 20px 45px;
  background:linear-gradient(90deg, #290EBA, #19ADD0);
}
footer .bg > ul{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  flex-wrap:wrap;
}
footer .bg > ul > li{
  min-width:130px;
  margin:0 110px 50px 0;
  font-size:1.6rem;
  font-weight:bold;
}
footer .bg > ul > li:last-child{
  margin-right:0;
}
footer .bg > ul > li .small{
  font-size:1.2rem;
  font-weight:normal;
  margin-left:0.5em;
}
footer .bg > ul > li ul{
  padding-left:30px;
}
footer .bg > ul > li li{
  font-size:1.4rem;
  margin-top:5px;
}
footer .bg li a, footer .bg li a:visited{
  color:#fff;
}
footer .copyright{
  font-size:1.3rem;
  font-weight:bold;
  color:#fff;
  text-align:center;
  padding-top:40px;
}

.gotop{
  position:fixed;
  right:60px;
  bottom:100px;
  display:none;
  opacity:0;
  z-index:500;
}
.gotop a{
  display:block;
  width:82px;
  height:82px;
  text-indent:-300px;
  overflow:hidden;
  background:linear-gradient(-45deg, #19ADD0, #290EBA);
  position:relative;
}
.gotop a::before,
.gotop a::after{
  content:"";
  display:block;
  position:absolute;
}
.gotop a::before{
  width:1px;
  height:26px;
  background:#fff;
  top:28px;
  left:41px;
}
.gotop a::after{
  width:12px;
  height:12px;
  border-top:solid 1px #fff;
  border-left:solid 1px #fff;
  top:29px;
  left:35px;
  transform:rotate(45deg);
}

/* container */
.spblock, .spinline, .tbinline{
  display:none;
}

.container{
  margin-bottom:100px;
}

.link_add_arrow, .link_add_arrow:visited,
.link_back_arrow, .link_back_arrow:visited{
  display:inline-block;
  font-size:1.4rem;
  font-weight:bold;
  color:#fff;
  padding:0 23px 3px 0;
  position:relative;
}
.link_back_arrow, .link_back_arrow:visited{
  color:#000;
  padding:0 0 2px 30px;
}
.link_add_arrow::before,
.link_back_arrow::before{
  content:"";
  display:block;
  position:absolute;
  bottom:0;
}
.link_add_arrow::before{
  width:33px;
  height:8px;
  border-bottom:solid 1px #fff;
  border-right:solid 1px #fff;
  transform:skew(45deg, 0);
  right:5px;
}
.link_back_arrow::before{
  width:28px;
  height:7px;
  border-bottom:solid 1px #000;
  border-left:solid 1px #000;
  transform:skew(-45deg, 0);
  left:5px;
}

/* Top page */
.top_block_01 h3,
.top_block_02 h3,
.top_block_03 h3,
.top_block_04 h3{
  height:35px;
}
.top_block_01 h3 img,
.top_block_02 h3 img,
.top_block_03 h3 img,
.top_block_04 h3 img{
  max-height:100%;
  width:auto;
}

.top_block_01{
  background:#F4FAFF;
}
.top_block_01 .inner{
  max-width:1120px;
  margin:0 auto;
  padding:55px 20px 100px;
}
.top_block_01 h3{
  margin-bottom:36px;
}
.top_block_01 figure{
  width:56.25%;
  margin-right:2%;
  float:right;
}
.top_block_01 .lead{
  width:39.28%;
  padding-bottom:5px;
  margin:43px 0 40px;
  font-size:2.4rem;
  font-weight:bold;
  position:relative;
  float:left;
}
.top_block_01 .lead::after{
  content:"";
  display:block;
  width:calc(100% - 28px);
  border-bottom:solid 1px #D7E8F5;
  position:absolute;
  bottom:0;
  right:0;
}
.top_block_01 .txt{
  width:35.7%;
}
.top_block_01 .btn{
  padding-top:93px;
}
.top_block_01 .btn a{
  display:block;
  max-width:490px;
  margin:0 auto;
  padding:31px 20px;
  font-size:1.7rem;
  font-weight:bold;
  text-align:center;
  color:#fff;
  background:linear-gradient(90deg, #290EBA, #19ADD0);
  position:relative;
}
.top_block_01 .btn a::after{
  content:"";
  display:block;
  width:31px;
  height:7px;
  border-bottom:solid 1px #fff;
  border-right:solid 1px #fff;
  position:absolute;
  right:16px;
  bottom:10px;
  transform:skew(45deg, 0);
}

.top_block_02{
  background:linear-gradient(90deg, #290EBA, #19ADD0);
  position:relative;
}
.top_block_02::before{
  content:"";
  display:block;
  width:100%;
  height:100%;
  background:url(images/top/bg_top_group.png) no-repeat 50% 55%;
  background-size:100% auto;
  mix-blend-mode: multiply;
  position:absolute;
  top:0;
  left:0;
  z-index:10;
}
.top_block_02 .inner{
  max-width:1120px;
  margin:0 auto;
  padding:43px 20px 130px;
  position:relative;
  z-index:20;
}
.top_block_02 h3{
  margin-bottom:56px;
}
.top_block_02 .box{
  position:relative;
}
.top_block_02 .box + .box{
  margin-top:75px;
}
.top_block_02 .box h4{
  font-size:2.4rem;
  color:#fff;
  position:absolute;
  margin-top:5.35%;
}
.top_block_02 .box h4 img{
  margin-bottom:8px;
}
.top_block_02 .box.odd h4{
  left:36.16%;
}
.top_block_02 .box.even h4{
  left:7.14%;
}
.top_block_02 .box h4.takagi{
  width:46.78%;
}
.top_block_02 .box h4.wakayama{
  width:59.2%;
}
.top_block_02 .box h4.kunihiro{
  width:55.26%;
}
.top_block_02 .box h4.tanaka{
  width:49.1%;
}

.top_block_02 .box .circle{
  width:35.7%;
  position:relative;
}
.top_block_02 .box.odd .circle{
  margin-left:-2.23%;
  float:left;
}
.top_block_02 .box.even .circle{
  margin-right:2%;
  float:right;
}
.top_block_02 .box .circle::before{
  content:"";
  display:block;
  height:0;
  padding-top:100%;
  background:rgba(225,255,255,0.1);
  border-radius:50%;
}
.top_block_02 .box .circle .circle_inner{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  left:0;
}
.top_block_02 .box .circle p{
  font-size:2rem;
  font-weight:bold;
  color:#fff;
}
.top_block_02 .box .circle .large{
  font-size:3.4rem;
  margin:-0.4em 0 0.1em;
}
.top_block_02 .box .circle a{
  position:absolute;
  left:50%;
  bottom:17%;
  transform:translateX(-50%);
}

@media screen and (max-width:1160px){

  .top_block_02 .box .circle p{
    font-size:1.72vw;
  }
  .top_block_02 .box .circle .large{
    font-size:2.93vw;
  }
  
}

.top_block_02 .box.odd dl{
  width:58%;
  padding:19.2% 6% 0 0;
  float:right;
}
.top_block_02 .box.even dl{
  width:52.67%;
  padding:19.2% 0 0 7.14%;
  float:left;
}
.top_block_02 .box dt{
  display:inline-block;
  margin-bottom:7px;
  font-size:1.4rem;
  line-height:1.3;
  color:#fff;
  border-bottom:dashed 1px #698BF4;
}
.top_block_02 .box dd{
  margin:0 0 20px;
  color:#fff;
}
.top_block_02 .box dd ul{
  display:flex;
  flex-wrap:wrap;
}
.top_block_02 .box dd li{
  font-size:1.8rem;
  margin:0 1.5em 0.2em 0;
}

.top_block_03{
  background:#F4FAFF;
}
.top_block_03 .inner{
  max-width:1120px;
  margin:0 auto;
  padding:55px 20px;
}
.top_block_04{
  max-width:1120px;
  margin:0 auto;
  padding:75px 20px 60px;
}

.top_block_03 h3,
.top_block_04 h3{
  margin-bottom:15px;
}
.top_block_03 ul,
.top_block_04 ul{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-bottom:15px;
}
.top_block_03 li,
.top_block_04 li{
  width:31.25%;
  margin-bottom:3.1%;
}
.top_block_03 li a,
.top_block_03 li a:visited,
.top_block_04 li a,
.top_block_04 li a:visited{
  display:block;
  box-sizing:border-box;
  height:100%;
  padding:33px 14px 50px;
  color:#fff;
  background:#290EBA;
}
.top_block_04 li a,
.top_block_04 li a:visited{
  color:#0b0b0b;
  background:#F2F2F2;
}
.top_block_03 li .date,
.top_block_04 li .date{
  font-size:1.4rem;
  font-weight:bold;
  margin-bottom:10px;
}
.top_block_03 li .ttl,
.top_block_04 li .ttl{
  line-height:1.2;
}
.top_block_03 .more,
.top_block_04 .more{
  text-align:right;
  padding-right:20px;
}
.top_block_03 .more .link_add_arrow,
.top_block_03 .more .link_add_arrow:visited,
.top_block_04 .more .link_add_arrow,
.top_block_04 .more .link_add_arrow:visited{
  color:#000;
}
.top_block_03 .more .link_add_arrow::before,
.top_block_04 .more .link_add_arrow::before{
  border-color:#000;
}

/* 下層ページ */
.page_ttl{
  background:url(images/bg_page_ttl.png) no-repeat 100% 50%;
  background-size:auto 100%;
  position:relative;
}
.page_ttl::before{
  content:"";
  display:block;
  width:100%;
  height:330px;
  background:linear-gradient(70deg, #290EBA, #19ADD0);
  opacity:0.8;
}
.page_ttl .inner{
  width:calc(100% - 40px);
  max-width:1200px;
  padding:0 20px;
  position:absolute;
  top:50%;
  left:50%;
  transform:translateX(-50%) translateY(-50%);
}
.page_ttl .inner h2{
  padding-bottom:19px;
  border-bottom:solid 1px #fff;
}
.page_ttl .inner h2 img{
  display:block;
  height:29px;
  width:auto;
}
.page_ttl .inner h2 .nihongo{
  display:block;
  padding-top:26px;
  font-size:1.6rem;
  color:#fff;
}

.paginate{
  display:flex;
  justify-content:center;
  margin-bottom:120px;
}
.paginate a, .page_block .paginate a:visited,
.paginate span{
  display:block;
  margin:0 3px;
  min-width:43px;
  line-height:43px;
  text-align:center;
  font-size:1.6rem;
  color:#101010;
  background:#fff;
  border:solid 1px #393939;
  border-radius:50%;
}
.paginate span.dots{
  border:none;
  min-width:inherit;
  width:4px;
  text-indent:-2em;
  overflow:hidden;
}
.paginate span.current{
  color:#fff;
  background:#393939;
}

/* research */
.research_block{
  max-width:1130px;
  margin:0 auto 140px;
  padding:63px 20px 0;
}
.research_block .box_01{
  margin-bottom:95px;
}
.research_block h3{
  font-size:3.4rem;
  margin-bottom:32px;
}
.research_block .box_01 p{
  max-width:970px;
  margin:0 auto 56px;
}
.research_block .box_01 dl{
  padding-top:25px;
  border-top:solid 1px #D7E8F5;
}
.research_block .box_01 dt{
  font-size:1.8rem;
  line-height:1.3;
  font-weight:bold;
  position:relative;
  z-index:20;
  float:left;
}
.research_block .box_01 dd{
  padding:0 0 25px 290px;
  margin:0 0 25px;
  border-bottom:solid 1px #D7E8F5;
  position:relative;
  z-index:10;
}
.research_block .box_01 dd a{
  text-decoration:underline;
}
.research_block .box_02{
  margin-bottom:90px;
}
.research_block .box_02 h4{
  font-size:2.4rem;
  padding-bottom:5px;
  margin-bottom:40px;
  border-bottom:solid 1px #D7E8F5;
}
.research_block .box_02 p{
  margin-bottom:1.5em;
}
.research_block .box_02 .fig_01{
  max-width:710px;
  margin:0 auto 50px;
}
.research_block .box_02 .fig_02{
  float:right;
  max-width:625px;
  margin-left:10px;
}
.research_block .box_02 .fig_03{
  max-width:874px;
  margin:60px auto 0;
}

/* group */
.group_block,
.group_block h3,
.group_block .box{
  position:relative;
}
.group_block{
  padding:63px 20px 0;
  margin-bottom:140px;
}
.group_block::before{
  content:"";
  display:block;
  width:504px;
  height:451px;
  background:url(images/bg_page_group.png) no-repeat;
  background-size:contain;
  mix-blend-mode: multiply;
  position:absolute;
  top:0;
  right:0;
}
.group_block h3{
  max-width:1130px;
  margin:0 auto;
  font-size:3.4rem;
  margin-bottom:60px;
}
.group_block h3 .small{
  display:inline-block;
  font-size:1.8rem;
  margin-left:40px;
}
.group_block .box{
  max-width:1130px;
  margin:0 auto 55px;
}
.group_block .box h4{
  font-size:2.4rem;
  border-bottom:solid 1px #D7E8F5;
  padding-bottom:5px;
  margin-bottom:40px;
}
.group_block .box .large{
  font-size:2.3rem;
}
.group_block .box .group_leader{
  max-width:550px;
  margin:45px 0 100px;
}
.group_block .box .member{
  display:flex;
  flex-wrap:wrap;
}
.group_block .box .member .item{
  width:calc(50% - 47px);
  padding:0 30px 0 13px;
  margin-bottom:50px;
  border-left:solid 4px #281BBC;
}
.group_block .box .group_leader h5{
  font-size:2.4rem;
  padding:0 0 5px 17px;
  margin-bottom:23px;
  border-bottom:solid 1px #D7E8F5;
  position:relative;
}
.group_block .box .group_leader h5::before{
  content:"";
  display:block;
  width:4px;
  height:29px;
  background:#281BBC;
  position:absolute;
  top:0.2em;
  left:0;
}
.group_block .box .member h5{
  font-size:2rem;
  margin-bottom:10px;
}
.group_block .box .group_leader h5 .small,
.group_block .box .member h5 .small{
  font-size:1.5rem;
  margin-left:1.5em;
}
.group_block .box .member h5 .small{
  font-weight:normal;
}
.group_block .box .group_leader p,
.group_block .box .member p{
  font-size:1.5rem;
}
.group_block .box .group_leader p.website{
  font-size:1.6rem;
  margin-top:10px;
  word-break:break-all;
}
.group_block .box .member p.website{
  font-size:1.3rem;
  margin-top:13px;
  padding:1px 0 2px 110px;
  position:relative;
  word-break:break-all;
}
.group_block .box .group_leader p.website .label,
.group_block .box .member p.website .label{
  display:inline-block;
  width:90px;
  margin-right:20px;
  font-size:1.3rem;
  line-height:2.3rem;
  text-align:center;
  color:#fff;
  background:linear-gradient(90deg, #315ACF, #19ADD0);
}
.group_block .box .member p.website .label{
  position:absolute;
  top:0;
  left:0;
}
.group_block .box p.website a{
  text-decoration:underline;
}

/* report & seminar */
.report_list,
.seminar_list{
  max-width:1140px;
  margin:0 auto 100px;
  padding:140px 20px 0;
}
.report_list ul,
.seminar_list ul{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
}
.report_list li,
.seminar_list li{
  width:30.7%;
  margin-bottom:20px;
}
.report_list li a,
.report_list li a:visited,
.seminar_list li a,
.seminar_list li a:visited{
  display:block;
  box-sizing:border-box;
  height:100%;
  padding:33px 14px 50px;
  color:#fff;
  background:#290EBA;
}
.seminar_list li a,
.seminar_list li a:visited{
  color:#0b0b0b;
  background:#F2F2F2;
}
.report_list li .date,
.seminar_list li .date{
  font-size:1.4rem;
  font-weight:bold;
  margin-bottom:10px;
}
.report_list li .ttl,
.seminar_list li .ttl{
  line-height:1.2;
}

.report_detail{
  max-width:1130px;
  margin:0 auto 150px;
  padding:125px 20px 0;
}
.report_detail .detail_ttl{
  padding:0 74px 15px;
  margin-bottom:50px;
  border-bottom:solid 1px #D7E8F5;
}
.report_detail .detail_ttl .date{
  display:inline-block;
  width:120px;
  padding:6px 0;
  font-size:1.4rem;
  font-weight:bold;
  text-align:center;
  color:#fff;
  background:#290EBA;
}
.report_detail .detail_ttl h3{
  font-size:2.6rem;
  padding-top:14px;
}
.report_detail .detail_content{
  padding:0 74px;
  margin-bottom:140px;
  line-height:1.8;
}
.report_detail .detail_content p{
  margin-bottom:1em;
}

.seminar_detail{
  max-width:1130px;
  margin:0 auto 150px;
  padding:140px 20px 0;
}
.seminar_detail h3{
  margin-bottom:33px;
  padding-bottom:20px;
  border-bottom:solid 1px #D7E8F5;
  font-size:2.6rem;
}
.seminar_detail .content_body{
  margin-bottom:40px;
}
.seminar_detail dl{
  max-width:982px;
  margin:0 auto 140px;
}
.seminar_detail dl dt{
  float:left;
  font-size:1.8rem;
}
.seminar_detail dl dd{
  margin:0 0 45px 7em;
  padding-top:2px;
  font-size:1.6rem;
}

.report_detail .back,
.seminar_detail .back,
.news_detail .back{
  text-align:center;
}

.report_table_list,
.seminar_table_list{
  max-width:1000px;
  margin:0 auto 150px;
  padding:120px 20px 0;
}
.seminar_table_list h3{
  font-size:2.4rem;
  padding-bottom:5px;
  margin-bottom:20px;
  border-bottom:solid 1px #D7E8F5;
}
.report_table_list table,
.seminar_table_list table{
  border-collapse:separate;
  border-spacing:4px;
  width:100%;
  margin-bottom:80px;
}
.report_table_list table{
  margin-bottom:40px;
}
.report_table_list td,
.seminar_table_list th,
.seminar_table_list td{
  padding:8px 15px;
  text-align:center;
  font-size:1.6rem;
  font-weight:normal;
  background:#F2F2F2;
  border:solid 1px #F2F2F2;
}
.seminar_table_list th{
  background:#F9F9F9;
}
.report_table_list td{
  background:#ecf2fd;
  border:solid 1px #eaf0fb;
}
.seminar_table_list tr th:nth-child(1){
  width:57%;
}
.seminar_table_list tr th:nth-child(2){
  width:20%;
}
.seminar_table_list tr th:nth-child(3){
  width:23%;
}
.seminar_table_list tr td:nth-child(1),
.seminar_table_list tr td:nth-child(3){
  text-align:left;
}
.seminar_table_list td.year{
  background:#e3e3e3;
  border:solid 1px #e0e0e0;
  text-align:center !important;
}
.report_table_list td.year{
  background:#ccdefb;
  border-color:#ccdefb;
}
.report_table_list tr td:nth-child(1):not(.year){
  width:20%;
}
.report_table_list tr td:nth-child(2){
  width:80%;
  text-align:left;
}

/* news */
.news_list{
  max-width:1130px;
  margin:0 auto 120px;
  padding:140px 20px 0;
}
.news_list dt{
  float:left;
  font-size:1.3rem;
  position:relative;
  z-index:20;
}
.news_list dd{
  margin:0 0 16px;
  padding:0 0 16px 210px;
  border-bottom:solid 1px #D7E8F5;
  position:relative;
  z-index:10;
}
.news_detail{
  max-width:1130px;
  margin:0 auto 120px;
  padding:125px 20px 0;
}
.news_detail .detail_ttl{
  padding:0 74px 15px;
  margin-bottom:50px;
  border-bottom:solid 1px #D7E8F5;
}
.news_detail .detail_ttl .date{
  font-size:1.4rem;
}
.news_detail .detail_ttl h3{
  font-size:2.6rem;
  padding-top:8px;
}
.news_detail .detail_content{
  padding:0 74px;
  margin-bottom:140px;
  line-height:1.8;
}
.news_detail .detail_content p{
  margin-bottom:1em;
}

/* error */
.error_block{
  max-width:1130px;
  margin:0 auto 200px;
  padding:63px 20px 0;
}
.error_block h3{
  font-size:3.4rem;
  margin-bottom:60px;
}


/* ------------------------------------------------------------------------------------------- */
@media screen and (max-width:810px){
/* ------------------------------------------------------------------------------------------- */

header.top_header > .inner h1{
  width:calc(100% - 60px);
}
header.top_header > .inner .sns{
  width:60px;
  position:relative;
}
header.top_header .news{
  padding:30px 20px 41px;
}
header.top_header .news dl{
  margin:0 0 0 120px;
  padding:15px 0 0;
}
header.top_header .news dl dd{
  margin:0 0 14px 130px;
}

header:not(.top_header) > .inner{
  padding:20px 20px;
}
header:not(.top_header) > .inner h1{
  width:260px;
}

header nav > .inner{
  padding:150px 40px 100px;
}
header nav .inner > ul > li{
  min-width:217px;
  margin:0 80px 50px 0;
}
header nav .inner > ul > li:last-child,
header nav .inner > ul > li:nth-child(2n){
  margin-right:0;
}

/* footer */
footer .bnr{
  margin-bottom:50px;
}
footer .bnr ul{
  flex-wrap:wrap;
  max-width:calc(80px + 50vw);
  margin:0 auto;
}
footer .bnr ul li{
  width:24.9vw;
  margin:0 20px 30px;
}

.gotop{
  right:0px;
  bottom:0px;
}

/* top */
.top_block_01 figure{
  width:62%;
  margin:0 auto 40px;
  float:none;
  text-align:center;
}
.top_block_01 .lead{
  margin:35px 0 40px;
  float:none;
}
.top_block_01 .txt{
  width:auto;
}

.top_block_02 .box.odd dl{
  padding:21% 6% 0 0;
}
.top_block_02 .box.even dl{
  padding:21% 0 0 7.14%;
}

/* 下層ページ */
.page_ttl::before{
  height:250px;
}

/* research */
.research_block .box_01 dd{
  padding:0 0 25px 180px;
}
.research_block .box_02 .fig_01{
  max-width:468px;
}
.research_block .box_02 .fig_02{
  max-width:412px;
}
.research_block .box_02 .fig_03{
  max-width:576px;
}

/* group */
.group_block .box .member .item{
  width:calc(100% - 47px);
}

/* report & seminar */
.report_list,
.seminar_list{
  padding:80px 20px 0;
}
.report_list li,
.seminar_list li{
  width:48%;
}

.report_detail{
  padding:80px 20px 0;
}
.report_detail .detail_ttl{
  padding:0 35px 15px;
}
.report_detail .detail_content{
  padding:0 35px;
}

.report_table_list,
.seminar_table_list{
  padding:80px 20px 0;
}
.report_table_list td,
.seminar_table_list th,
.seminar_table_list td{
  padding:8px 10px;
  font-size:1.4rem;
}
.seminar_table_list tr th:nth-child(1){
  width:56%;
}
.seminar_table_list tr th:nth-child(2){
  width:22%;
}
.seminar_table_list tr th:nth-child(3){
  width:22%;
}

/* news */
.news_list{
  padding:80px 20px 0;
}
.news_list dd{
  padding:0 0 16px 110px;
}
.news_detail{
  padding:80px 20px 0;
}
.news_detail .detail_ttl{
  padding:0 35px 15px;
}
.news_detail .detail_content{
  padding:0 35px;
}

}/* max-width:810px */

/* ------------------------------------------------------------------------------------------- */
@media screen and (max-width:480px){
/* ------------------------------------------------------------------------------------------- */

/* header */
header.top_header{
  background:linear-gradient(-80deg, #19ADD0, #290EBA);
}
header.top_header .inner h1{
  width:100%;
}
header.top_header > .inner .sns{
  display:none;
}
header.top_header .news{
  padding:20px 15px 25px;
}
header.top_header .news h3{
  width:53px;
  float:none;
  margin-bottom:15px;
}
header.top_header .news dl{
  margin:0;
  padding:0;
}
header.top_header .news dl dt,
header.top_header .news dl dd{
  font-size:1.2rem;
}
header.top_header .news dl dd{
  margin:0 0 14px 85px;
}
header.top_header .news .more{
  padding-right:5px;
}

header:not(.top_header) > .inner{
  padding:15px 15px
}
header:not(.top_header) > .inner h1{
  width:191px;
}

header .menu a,
header nav .menu_close a{
  width:50px;
  height:50px;
}
header .menu a span,
header .menu a::before,
header .menu a::after,
header nav .menu_close a::before,
header nav .menu_close a::after{
  width:26px;
  height:1px;
  background:#fff;
  position:absolute;
  left:12px;
}
header .menu a span{
  top:25px;
}
header .menu a::before{
  top:17px;
}
header .menu a::after{
  top:33px;
}
header nav .menu_close a::before{
  top:25px;
}
header nav .menu_close a::after{
  top:25px;
}

header nav > .inner{
  padding:100px 20px 100px;
}
header nav .inner > ul{
  display:block;
  max-width:250px;
  margin:0 auto;
}
header nav .inner > ul > li{
  margin:0 0 22px;
  font-size:1.6rem;
}
header nav .inner > ul > li .small{
  font-size:1.3rem;
  margin-left:0.9em;
}
header nav .inner > ul:nth-child(2) li:nth-child(2) .small{
  display:block;
  margin:0;
  line-height:1;
}
header nav .inner > ul > li ul{
  padding-left:30px;
}
header nav .inner > ul > li li{
  font-size:1.3rem;
  margin-top:5px;
}
header nav .sns{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:30px;
}
header nav .sns p{
  width:63px;
}
header nav .sns a{
  display:block;
  width:22px;
  margin-left:10px;
}

/* footer */
footer .bnr{
  margin-bottom:39px;
}
footer .bnr ul{
  max-width:inherit;
  justify-content:space-between;
  margin-bottom:0;
  padding:0 15px;
}
footer .bnr ul li{
  width:43.5vw;
  margin:0 0 16px;
}
footer .bg{
  padding:30px 15px 15px;
}
footer .bg > ul{
  display:block;
}
footer .bg > ul > li{
  margin:0 0 20px;
}
footer .bg > ul > li .small{
  font-size:1.3rem;
  margin-left:0.8em;
}
footer .bg > ul > li li{
  font-size:1.3rem;
  margin-top:5px;
}
footer .bg > ul > li ul{
  padding-left:24px;
}
footer .bg > ul:nth-child(2) > li:nth-child(2) .small{
  display:block;
  margin-left:0;
  line-height:1;
}
footer .copyright{
  padding-top:60px;
}

.gotop{
  right:15px;
  bottom:50px;
}
.gotop a{
  width:41px;
  height:41px;
}
.gotop a::before{
  width:1px;
  height:13px;
  top:14px;
  left:20px;
}
.gotop a::after{
  width:6px;
  height:6px;
  top:15px;
  left:17px;
}

/* container */
.spinline{
  display:inline;
}
.spblock{
  display:block;
}

.container{
  margin-bottom:50px;
}

.link_add_arrow, .link_add_arrow:visited{
  display:inline-block;
  font-size:1.2rem;
  padding:0 20px 0px 0;
}
.link_add_arrow::before{
  width:20px;
  height:5px;
  right:5px;
}

/* top page */
.top_block_01 h3,
.top_block_02 h3,
.top_block_03 h3,
.top_block_04 h3{
  height:21px;
}

.top_block_01 .inner{
  padding:25px 15px 40px;
}
.top_block_01 h3{
  margin-bottom:25px;
}
.top_block_01 figure{
  width:auto;
  margin-bottom:20px;
}
.top_block_01 .lead{
  width:auto;
  padding-bottom:2px;
  margin:0 0 20px;
  font-size:1.6rem;
}
.top_block_01 .lead::after{
  width:calc(100% - 15px);
}
.top_block_01 .btn{
  padding-top:10px;
}
.top_block_01 .btn a{
  max-width:245px;
  padding:12px 10px;
  font-size:1.3rem;
}
.top_block_01 .btn a::after{
  width:25px;
  height:6px;
  right:12px;
  bottom:10px;
}

.top_block_02::before{
  background:url(images/top/bg_top_group_sp.png) no-repeat 50% 55%;
  background-size:100% auto;
}
.top_block_02 .inner{
  padding:25px 15px 40px;
}
.top_block_02 h3{
  margin-bottom:26px;
}
.top_block_02 .box + .box{
  margin-top:75px;
}
.top_block_02 .box h4{
  font-size:1.5rem;
  margin-top:0;
}
.top_block_02 .box h4 img{
  margin-bottom:8px;
}
.top_block_02 .box.odd h4,
.top_block_02 .box.even h4{
  left:0;
}
.top_block_02 .box h4.takagi{
  width:42.78%;
  margin-top:-1.8%;
  left:57%;
}
.top_block_02 .box h4.wakayama{
  width:69.88%;
  margin-top:-7.5%;
}
.top_block_02 .box h4.kunihiro{
  width:59.26%;
  margin-top:-7.5%;
  left:40.3%;
  text-align:right;
}
.top_block_02 .box h4.tanaka{
  width:47.75%;
}

.top_block_02 .box .circle{
  width:60.6%;
}
.top_block_02 .box.odd .circle{
  margin-left:0;
}
.top_block_02 .box.even .circle{
  margin-right:0;
  margin-bottom:-10%;
}
.top_block_02 .box .circle p{
  font-size:3.1vw;
  text-align:center;
}
.top_block_02 .box .circle .large{
  font-size:5.4vw;
  margin:-0.4em 0 0.1em;
}
.top_block_02 .box .circle a{
  bottom:17%;
}
.top_block_02 .box dl{
  clear:both;
}
.top_block_02 .box.odd dl{
  width:auto;
  padding:1.5% 0 0;
  float:none;
}
.top_block_02 .box.even dl{
  width:auto;
  padding:0;
  float:none;
}
.top_block_02 .box dt{
  margin-bottom:7px;
  font-size:1.5rem;
}
.top_block_02 .box dd{
  margin:0 0 20px;
}
.top_block_02 .box dd li{
  margin:0 1.5em 0.2em 0;
}

.top_block_03 .inner{
  padding:35px 15px 35px;
}
.top_block_04{
  padding:28px 15px 10px;
}
.top_block_03 h3,
.top_block_04 h3{
  margin-bottom:18px;
}
.top_block_03 ul,
.top_block_04 ul{
  display:block;
  margin-bottom:20px;
}
.top_block_03 li,
.top_block_04 li{
  width:auto;
  margin-bottom:20px;
}
.top_block_03 li a,
.top_block_03 li a:visited,
.top_block_04 li a,
.top_block_04 li a:visited{
  padding:20px 14px 25px;
}
.top_block_03 li .date,
.top_block_04 li .date{
  font-size:1.3rem;
}

/* 下層ページ */
.page_ttl::before{
  height:150px;
}
.page_ttl .inner{
  width:calc(100% - 30px);
  padding:0 15px;
}
.page_ttl .inner h2{
  padding-bottom:5px;
}
.page_ttl .inner h2 img{
  height:20px;
}
.page_ttl .inner h2 .nihongo{
  padding-top:7px;
  font-size:1.4rem;
}

.paginate{
  margin-bottom:60px;
}
.paginate a, .page_block .paginate a:visited,
.paginate span{
  margin:0 2px;
  min-width:28px;
  line-height:28px;
  font-size:1.3rem;
}
.paginate span.dots{
  width:3px;
}

/* research */
.research_block{
  margin:0 auto 70px;
  padding:30px 15px 0;
}
.research_block .box_01{
  margin-bottom:50px;
}
.research_block h3{
  font-size:2.4rem;
  margin-bottom:25px;
}
.research_block .box_01 p{
  margin:0 auto 40px;
}
.research_block .box_01 dl{
  padding-top:15px;
}
.research_block .box_01 dt{
  font-size:1.6rem;
  line-height:1.6;
  float:none;
}
.research_block .box_01 dd{
  padding:0 0 15px;
  margin:0 0 15px;
  font-size:1.5rem;
}
.research_block .box_02{
  margin-bottom:50px;
}
.research_block .box_02 h4{
  font-size:1.8rem;
  padding-bottom:3px;
  margin-bottom:25px;
}
.research_block .box_02 .fig_01{
  margin:0 auto 35px;
}
.research_block .box_02 .fig_02{
  float:none;
  margin:0 auto 35px;
}
.research_block .box_02 .fig_03{
  margin:40px auto 0;
}

/* group */
.group_block{
  padding:30px 15px 0;
  margin-bottom:70px;
}
.group_block::before{
  width:252px;
  height:226px;
}
.group_block h3{
  font-size:2.4rem;
  margin-bottom:40px;
  line-height:1.3;
}
.group_block h3 .small{
  display:block;
  font-size:1.5rem;
  margin-left:0;
}
.group_block .box{
  margin:0 auto 40px;
}
.group_block .box h4{
  font-size:1.8rem;
  padding-bottom:3px;
  margin-bottom:30px;
}
.group_block .box .large{
  font-size:1.9rem;
}
.group_block .box .group_leader{
  margin:35px 0 60px;
}
.group_block .box .member .item{
  width:calc(100% - 15px);
  padding:0 0 0 12px;
  margin-bottom:30px;
  border-left:solid 3px #281BBC;
}
.group_block .box .group_leader h5{
  font-size:1.8rem;
  padding:0 0 3px 15px;
  margin-bottom:18px;
}
.group_block .box .group_leader h5::before{
  width:3px;
  height:22px;
  top:0.2em;
  left:0;
}
.group_block .box .member h5{
  font-size:1.7rem;
  margin-bottom:8px;
}
.group_block .box .group_leader h5 .small,
.group_block .box .member h5 .small{
  font-size:1.3rem;
}
.group_block .box .group_leader p,
.group_block .box .member p{
  font-size:1.4rem;
}
.group_block .box .group_leader p.website{
  font-size:1.5rem;
  margin-top:8px;
}
.group_block .box .member p.website{
  margin-top:12px;
  padding:0;
}
.group_block .box .group_leader p.website .label,
.group_block .box .member p.website .label{
  display:block;
  width:80px;
  margin:0 0 3px;
  font-size:1.2rem;
  line-height:2.1rem;
}
.group_block .box .member p.website .label{
  position:static;
}

/* report & seminar */
.report_list,
.seminar_list{
  margin:0 auto 50px;
  padding:30px 15px 0;
}
.report_list li,
.seminar_list li{
  width:100%;
  margin-bottom:15px;
}
.report_list li .date,
.seminar_list li .date{
  font-size:1.3rem;
  margin-bottom:10px;
}
.report_list li a,
.report_list li a:visited,
.seminar_list li a,
.seminar_list li a:visited{
  padding:25px 14px 35px;
}

.report_detail{
  margin:0 auto 80px;
  padding:30px 15px 0;
}
.report_detail .detail_ttl{
  padding:0 0 15px;
  margin-bottom:40px;
}
.report_detail .detail_ttl .date{
  width:90px;
  padding:3px 0;
  font-size:1.2rem;
}
.report_detail .detail_ttl h3{
  font-size:1.8rem;
  padding-top:10px;
}
.report_detail .detail_content{
  padding:0;
  margin-bottom:100px;
}

.seminar_detail{
  margin:0 auto 80px;
  padding:30px 15px 0;
}
.seminar_detail h3{
  margin-bottom:28px;
  padding-bottom:15px;
  font-size:1.8rem;
}
.seminar_detail dl{
  margin:0 auto 100px;
}
.seminar_detail dl dt{
  font-size:1.6rem;
  width:5em;
}
.seminar_detail dl dd{
  margin:0 0 30px 6em;
  padding-top:0;
}

.report_table_list,
.seminar_table_list{
  padding:30px 15px 0;
  margin-bottom:70px;
}
.seminar_table_list h3{
  font-size:1.8rem;
  padding-bottom:2px;
  margin-bottom:15px;
}
.seminar_table_list table{
  margin-bottom:40px;
}
.report_table_list table{
  margin-bottom:30px;
}
.seminar_table_list tr.hd{
  display:none;
}
.report_table_list td,
.seminar_table_list td{
  display:block;
  padding:8px 10px;
  font-size:1.4rem;
  position:relative;
}
.seminar_table_list tr td:nth-child(1):not(.year){
  padding:10px 10px 0 10px;
}
.seminar_table_list tr td:nth-child(2){
  padding:0 10px;
  text-align:left;
}
.seminar_table_list tr td:nth-child(3){
  padding:0 10px 10px 10px;
}
.report_table_list tr td:nth-child(1):not(.year){
  width:auto;
  padding:10px 10px 0 10px;
  text-align:left;
}
.report_table_list tr td:nth-child(2){
  width:auto;
  padding:0 10px 10px 10px;
}

/* news */
.news_list{
  margin:0 auto 50px;
  padding:30px 15px 0;
}
.news_list dt{
  float:none;
  margin-bottom:5px;
}
.news_list dd{
  padding:0 0 16px;
}
.news_detail{
  margin:0 auto 80px;
  padding:30px 15px 0;
}
.news_detail .detail_ttl{
  padding:0 0 15px;
  margin-bottom:40px;
}
.news_detail .detail_ttl .date{
  font-size:1.2rem;
}
.news_detail .detail_ttl h3{
  font-size:1.8rem;
}
.news_detail .detail_content{
  padding:0;
  margin-bottom:100px;
}

/* error */
.error_block{
  margin:0 auto 150px;
  padding:30px 15px 0;
}
.error_block h3{
  font-size:2.4rem;
  margin-bottom:40px;
}

}/* max-width:480px */
