@charset "utf-8";

/*-------------------------------------
  CHILD TOP
--------------------------------------*/
/* news */
.fx_newsttl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  margin-bottom: .8em;
}
.fx_newsttl .link_more {
  display: block;
  margin-left: 5em;
}

.link_more {
  position: relative;
  display: inline-block;
  padding: .7em 2.5em;
  border: 1px solid #010101;
  line-height: 1.3;
}
.link_more:hover,
.link_more:focus {
  background-color: #010101;
  color: #fff;
}

.ul_news > li {
  border-bottom: 1px solid #eeeeee;
}
.ul_news > li > a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  padding: 1em 0;
}
.ul_news > li > a:hover,
.ul_news > li > a:focus {
  opacity: .7;
}
.ul_news > li > a > .left {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.ul_news > li > a > .left > .date {
  display: block;
  width: 6.5em;
  padding-top: .1em;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  font-size: 1.4rem;
  color: #777777;
}
.ul_news > li > a > .left > .title {
  display: block;
  width: calc( 100% - 6.5em );
  font-weight: 500;
}
.ul_news > li > a > .right {
  position: relative;
  padding-left: 5.6em;
}
.ul_news > li > a > .right::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 1.8em;
  bottom: 0;
  margin: auto;
  width: 2em;
  height: 1px;
  background-color: #000101;
}
@media screen and (min-width: 992px) {
  /*.ul_news > li > a > .left > .title,*/
  .ul_news > li > a > .right {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}


@media screen and (max-width: 991px) {
  .ul_news > li > a {
    flex-wrap: wrap;
    padding: 1.2em 0;
  }
  .ul_news > li > a > .left {
    flex-wrap: wrap;
    width: 100%;
  }
  .ul_news > li > a > .left > .date {
    width: 100%;
    margin-bottom: .3em;
    line-height: 1.1;
  }
  .ul_news > li > a > .left > .title {
    width: 100%;
    max-width: 100%;
    line-height: 1.3;
  }
  .ul_news > li > a > .right {
    margin-top: .8em;
    padding-top: .8em;
    padding-left: 0;
    width: 100%;
  }
  .ul_news > li > a > .right::before {
    top: 0;
    left: 0;
    bottom: auto;
    width: 4em;
    background-color: #777;
  }
}



/* slider */
.fx_archive {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  margin: 0 -1em;
}
.fx_archive .box_title {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 20em;
  padding: 0 1em;
}
.fx_archive .box_title .title {
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  font-size: 4.2rem;
  color: #010101;
  line-height: 1.1;
}
.fx_archive .box_title .more {
  position: relative;
  display: block;
  margin-top: .5em;
  padding-right: 1.5em;
  line-height: 1.3;
}
.fx_archive .box_title .more:hover,
.fx_archive .box_title .more:focus {
  text-decoration: underline;
}
.fx_archive .box_title .more::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: .5em;
  bottom: 0;
  margin: auto;
  width: .4em;
  height: .4em;
  border-right: .2rem solid #333;
  border-bottom: .2rem solid #333;
  transform: rotate(-45deg);
}
.fx_archive .box_archive {
  width: calc( 100% - 20em );
  padding: 0 1em;
}

.slick-dotted {
  padding-bottom: 1em;
}
.slick-slide * {
  outline: none;
}

.column_style {
  margin: 0 -1em;
}
.column_style .slick-track {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-left: 0;
  margin-right: 0;
}
.column_style .slick-slide {
  height: auto;
  padding: 0 1em;
  float: none;
}
.column_style .slick-slide > a {
  display: block;
}
.column_style .slick-slide > a .wrap_ofi {
  background-color: rgba(51, 51, 51, .7);
  overflow: hidden;
}
@media screen and (min-width: 992px) {
  .column_style .slick-slide > a .wrap_ofi > img {
    backface-visibility: hidden;
    transition: .4s;
  }
}
.column_style .slick-slide > a:hover .wrap_ofi > img,
.column_style .slick-slide > a:focus .wrap_ofi > img {
  transform: scale(1.1);
  opacity: .9;
}
.column_style .slick-slide > a .public_date {
  display: block;
  margin-top: .5em;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  font-size: 1.3rem;
  color: #777;
  line-height: 1.1;
  letter-spacing: .1rem;
}
.column_style .slick-slide > a .title {
  margin-top: .5em;
  font-weight: 500;
  color: #333;
  line-height: 1.5;
}
@media screen and (min-width: 992px) {
  .column_style .slick-slide > a .title {
    transition: .4s;
  }
}
.column_style .slick-slide > a:hover .title,
.column_style .slick-slide > a:focus .title {
  opacity: .8;
}


@media screen and (max-width: 991px) {
  .fx_archive {
    margin-left: -1.5%;
    margin-right: -1.5%;
  }
  .fx_archive .box_title {
    width: 13em;
    padding: 0 1.5%;
  }
  .fx_archive .box_title .title {
    font-size: 3rem;
  }
  .fx_archive .box_archive {
    width: calc( 100% - 12em );
    padding: 0 1.5%;
  }

  .column_style {
    margin: 0 -1.5vw;
  }
  .column_style .slick-slide {
    padding: 0 1.5vw;
  }
  .column_style .slick-slide > a .public_date {
    font-size: 1.2rem;
  }
  .column_style .slick-slide > a .title {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  .fx_archive {
    flex-wrap: wrap;
  }
  .fx_archive .box_title {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 1.5em;
  }
  .fx_archive .box_title .title {
    font-size: 3.6rem;
  }
  .fx_archive .box_title .more {
    margin-top: 0;
  }
  .fx_archive .box_archive {
    width: 100%;
  }
}
@media screen and (max-width: 575px) {
  .ul_news > li > a {
    flex-wrap: wrap;
    padding: 1.2em 0;
  }
  .ul_news > li > a > .datetime {
    width: 100%;
    margin-bottom: .5em;
    padding-right: 0;
  }
  .ul_news > li > a > .title {
    width: 100%;
  }
}



/* archive */
.term_title {
  margin-bottom: 1em;
  text-align: center;
  font-weight: 400;
  font-size: 1.8rem;
}

.sec_switchbtn {
  margin-bottom: 3.6em;
}
.ul_switchbtn {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
.ul_switchbtn > li + li {
  margin-left: 2em;
}
.ul_switchbtn > li > button {
  padding: .5em;
  border-radius: .2em;
  border: 0;
  outline: 0;
  background-color: transparent;
  cursor: pointer;
}
@media screen and (min-width: 992px) {
  .ul_switchbtn > li > button {
    transition: .4s;
  }
}
.ul_switchbtn > li > button:hover,
.ul_switchbtn > li > button:focus {
  opacity: .7;
}
.pc .ul_switchbtn > li:last-child {
  opacity: .3;
}
.sp .ul_switchbtn > li:first-child {
  opacity: .3;
}

.sec_sitelist {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: -5.6em;
  margin-left: -1em;
  margin-right: -1em;
}
.sec_sitelist > .item {
  margin-top: 5.6em;
  padding-left: 1em;
  padding-right: 1em;
}
.sec_sitelist > .item > a {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.sec_sitelist > .item > a > * {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  padding-top: 0;
}
.sec_sitelist > .item > a > .img_pc {
  left: 0;
}
.sec_sitelist > .item > a > .img_sp {
  right: 0;
}
.sec_sitelist > .item > a > *::before {
  content: '';
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 0 solid #111;
}
@media screen and (min-width: 992px) {
  .sec_sitelist > .item > a > *::before {
    transition: border-width .2s ease-in-out;
  }
}
.sec_sitelist > .item > a:hover > *::before,
.sec_sitelist > .item > a:focus > *::before {
  border-width: .5rem;
}

.all .sec_sitelist > .item {
  width: 50%;
}
.all .sec_sitelist > .item > a {
  padding-top: 58%;
}
.all .sec_sitelist > .item > a .img_pc {
  width: 71.75%;
}
.all .sec_sitelist > .item > a .img_sp {
  width: 26.75%;
}
.pc .sec_sitelist > .item {
  width: 33.3333%;
}
.pc .sec_sitelist > .item > a  {
  padding-top: 80%;
}
.pc .sec_sitelist > .item > a .img_pc {
  width: 100%;
}
.pc .sec_sitelist > .item > a .img_sp {
  display: none;
}
.sp .sec_sitelist > .item {
  width: 16.6666%;
}
.sp .sec_sitelist > .item > a  {
  padding-top: 216%;
}
.sp .sec_sitelist > .item > a .img_pc {
  display: none;
}
.sp .sec_sitelist > .item > a .img_sp {
  width: 100%;
}

.sec_sitelist > .item > .box_sitettl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 1.5em;
}
.sec_sitelist > .item > .box_sitettl > .ttl {
  font-weight: 400;
  letter-spacing: .05rem;
}
.sec_sitelist > .item > .box_sitettl > .ttl > a {
  position: relative;
  display: inline-block;
  padding: .5em 0;
}
.sec_sitelist > .item > .box_sitettl > .ttl > a::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: .1rem;
  background-color: #111;
  transition: .4s;
}
.sec_sitelist > .item > .box_sitettl > .ttl > a:hover::before,
.sec_sitelist > .item > .box_sitettl > .ttl > a:focus::before {
  width: 5em;
}

.sec_sitelist > .item > .box_sitettl > .more {
  position: relative;
  padding-left: 2em;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  white-space: nowrap;
}
.sec_sitelist > .item > .box_sitettl > .more::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 1.6em;
  height: 1.6em;
  border-radius: 50%;
  border: .2rem solid #e8eaea;
}
.sec_sitelist > .item > .box_sitettl > .more > a {
  position: relative;
  display: inline-block;
  padding: .5em;
  padding-right: 2.6em;
  color: #cbcfcf;
  letter-spacing: .1rem;
}
.sec_sitelist > .item > .box_sitettl > .more > a::before,
.sec_sitelist > .item > .box_sitettl > .more > a::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #cbcfcf;
}
@media screen and (min-width: 992px) {
  .sec_sitelist > .item > .box_sitettl > .more > a::before,
  .sec_sitelist > .item > .box_sitettl > .more > a::after {
    transition: .4s;
  }
}
.sec_sitelist > .item > .box_sitettl > .more > a::before {
  right: .7em;
  width: .14em;
  height: .85em;
}
.sec_sitelist > .item > .box_sitettl > .more > a::after {
  right: .35em;
  width: .85em;
  height: .14em;
}
.sec_sitelist > .item > .box_sitettl > .more > a:hover,
.sec_sitelist > .item > .box_sitettl > .more > a:focus {
  color: #111;
}
.sec_sitelist > .item > .box_sitettl > .more > a:hover::before,
.sec_sitelist > .item > .box_sitettl > .more > a:focus::before {
  background-color: #111;
  transform: rotate(90deg);
}
.sec_sitelist > .item > .box_sitettl > .more > a:hover::after,
.sec_sitelist > .item > .box_sitettl > .more > a:focus::after {
  opacity: 0;
}

.sp .sec_sitelist > .item {
  position: relative;
  padding-bottom: 2.2em;
}
.sp .sec_sitelist > .item > .box_sitettl {
  display: block;
  margin-top: 1em;
}
.sp .sec_sitelist > .item > .box_sitettl > .more {
  position: absolute;
  right: 1em;
  bottom: 0;
  padding-left: 0;
  text-align: right;
}


@media screen and (max-width: 991px) {
  .term_title {
    font-size: 1.6rem;
  }

  .sec_switchbtn {
    margin-bottom: 2em;
  }
  .ul_switchbtn > li > button > img {
    max-height: 2.5em;
  }

  .sec_sitelist {
    margin-top: -2.5em;
    margin-left: -1.5%;
    margin-right: -1.5%;
  }
  .sec_sitelist > .item {
    margin-top: 2.5em;
    padding-left: 1.5%;
    padding-right: 1.5%;
  }

  .pc .sec_sitelist > .item {
    width: 50%;
  }
  .sp .sec_sitelist > .item {
    width: 25%;
  }

  .sec_sitelist > .item > .box_sitettl {
    font-size: 1.2rem;
  }
  .sec_sitelist > .item > .box_sitettl > .more {
    padding-left: 1em;
  }
}
@media screen and (max-width: 767px) {
  .sec_sitelist > .item {
    position: relative;
    padding-bottom: 2.2em;
  }
  .sec_sitelist > .item > .box_sitettl {
    display: block;
    margin-top: 1em;
  }
  .sec_sitelist > .item > .box_sitettl > .more {
    position: absolute;
    right: 1.5%;
    bottom: 0;
    padding-left: 0;
    text-align: right;
  }
}
@media screen and (max-width: 575px) {
  .all .sec_sitelist > .item {
    width: 100%;
  }
  .sp .sec_sitelist > .item {
    width: 33.3333%;
  }
}




/*-------------------------------------
  CHILD DETAIL
--------------------------------------*/
.site_img {
  margin-bottom: 2em;
}
.site_img > a {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding-top: 58%;
}
.site_img > a > * {
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  padding-top: 0;
}
.site_img > a > .img_pc {
  left: 0;
  width: 71.75%;
}
.site_img > a > .img_sp {
  right: 0;
  width: 26.75%;
}
.site_img > a > *::before {
  content: '';
  display: block;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 0 solid #111;
}
@media screen and (min-width: 992px) {
  .site_img > a > *::before {
    transition: border-width .2s ease-in-out;
  }
}
.site_img > a:hover > *::before,
.site_img > a:focus > *::before {
  border-width: .5rem;
}

.site_ttl {
  margin-bottom: .5em;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: .1rem;
}
.site_ttl > a:hover,
.site_ttl > a:focus {
  opacity: .7;
}

.site_url {
  margin-bottom: 1.5em;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.3;
  word-break: break-all;
}
.site_url > a:hover,
.site_url > a:focus {
  opacity: .7;
}

.site_desc {
  margin-bottom: 2em;
  font-size: 1.6rem;
}

.site_term {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  margin-left: -.3em;
  margin-right: -.3em;
}
.site_term > li {
  padding: .3em;
}
.site_term > li > a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 14.3em;
  height: 100%;
  min-height: 3em;
  padding: .3em 1em;
  border: 1px solid #111;
  background-color: #111;
  text-align: center;
  color: #fff;
  line-height: 1.1;
  letter-spacing: .1rem;
}
.site_term > li > a:hover,
.site_term > li > a:focus {
  background-color: transparent;
  color: #111;
}

@media screen and (max-width: 991px) {
  .site_term > li {
    width: 33.3333%;
  }
  .site_term > li > a {
    width: 100%;
    min-width: 1em;
  }
}
@media screen and (max-width: 767px) {
  .site_term > li {
    width: 50%;
  }
}




/*-------------------------------------
  COLUMN
--------------------------------------*/
/* archive */
.main_2col {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin: 0 -2em;
}
.main_2col .main_conts {
  width: 75%;
  padding-left: 2em;
  padding-right: 2em;
}
.main_2col .side_conts {
  width: 25%;
  padding-left: 2em;
  padding-right: 2em;
}

.fx_columnlist .item {
  padding-bottom: 2em;
  border-bottom: 1px solid #ddd;
}
.fx_columnlist .item + .item {
  margin-top: 2em;
}
.fx_columnlist .item > a {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: flex-start;
}
.fx_columnlist .item > a .wrap_ofi {
  width: 25%;
  padding-top: 16%;
  background-color: #333;
  overflow: hidden;
}
@media screen and (min-width: 992px) {
  .fx_columnlist .item > a .wrap_ofi > img {
    backface-visibility: hidden;
    transition: .4s;
  }
}
.fx_columnlist .item > a:hover .wrap_ofi > img,
.fx_columnlist .item > a:focus .wrap_ofi > img {
  transform: scale(1.1);
  opacity: .9;
}
.fx_columnlist .item > a .conts {
  width: 75%;
  padding-left: 2em;
}
.fx_columnlist .item > a .conts .public_date {
  display: block;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  color: #777;
  line-height: 1.1;
  letter-spacing: .1rem;
}
.fx_columnlist .item > a .conts .title {
  margin-top: .5em;
  font-weight: 500;
  font-size: 1.8rem;
  color: #333;
  line-height: 1.5;
}
@media screen and (min-width: 992px) {
  .fx_columnlist .item > a .conts .title {
    transition: .4s;
  }
}
.fx_columnlist .item > a:hover .conts .title,
.fx_columnlist .item > a:focus .conts .title {
  opacity: .8;
}

.ul_termlist > li {
  border-bottom: 1px solid #ddd;
}
.ul_termlist > li > a {
  position: relative;
  display: block;
  padding: 1em;
  padding-right: 2em;
}
.ul_termlist > li > a:hover,
.ul_termlist > li > a:focus {
  background-color: #f4f4f4;
}
.ul_termlist > li > a::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 1em;
  bottom: 0;
  margin: auto;
  width: .4em;
  height: .4em;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  transform: rotate(-45deg);
}
@media screen and (min-width: 992px) {
  .ul_termlist > li > a::before {
    transition: .4s;
  }
}
.ul_termlist > li > a:hover::before,
.ul_termlist > li > a:focus::before {
  right: .5em;
}


@media screen and (max-width: 991px) {
  .main_2col {
    display: block;
    margin: 0;
  }
  .main_2col .main_conts,
  .main_2col .side_conts {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .main_2col > * + * {
    margin-top: 2.5em;
  }

  .fx_columnlist .item {
    padding-bottom: 1.5em;
  }
  .fx_columnlist .item + .item {
    margin-top: 1.5em;
  }
  .fx_columnlist .item > a .wrap_ofi {
    width: 30%;
    padding-top: 20%;
  }
  .fx_columnlist .item > a .conts {
    width: 70%;
    padding-left: 1.5em;
  }
  .fx_columnlist .item > a .conts .public_date {
    font-size: 1.3rem;
  }
  .fx_columnlist .item > a .conts .title {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .fx_columnlist .item {
    padding-bottom: 1.2em;
  }
  .fx_columnlist .item + .item {
    margin-top: 1.2em;
  }
  .fx_columnlist .item > a .wrap_ofi {
    width: 35%;
    padding-top: 24%;
  }
  .fx_columnlist .item > a .conts {
    width: 65%;
    padding-left: 1.2em;
  }
  .fx_columnlist .item > a .conts .public_date {
    font-size: 1.2rem;
  }
  .fx_columnlist .item > a .conts .title {
    font-size: 1.4rem;
  }
}



/* single */
.column_label {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  margin-top: 1em;
  margin-bottom: 2.5em;
}
.column_label .public_date {
  display: block;
  font-weight: 900;
  font-family: 'Roboto', sans-serif;
  color: #777;
  line-height: 1.1;
  letter-spacing: .1rem;
}
.column_label .site_term {
  margin-left: 1em;
}
.column_label .site_term > li > a {
  min-width: 0;
  min-height: 0;
}

.box_relation {
  padding: 2em;
  border: 1px solid #ddd;
}

@media screen and (max-width: 991px) {
  .column_label {
    margin-bottom: 1.5em;
  }

  .column_label .site_term > li {
    width: 100%;
  }

  .box_relation {
    padding: 1.5em;
  }
}




/*--------------------------------------------
  FORM
--------------------------------------------*/
input:not([type='radio']):not([type='checkbox']),
select,
textarea {
  width: 100%;
  font-size: 1.4rem;
  padding: 1rem;
  border: 1px solid #eee;
  line-height: 1.3;
}
select {
  padding: .8rem 1rem;
}
.ios select {
  -webkit-appearance: button;
  appearance: button;
  padding: .8rem 1rem;
}
textarea {
  min-height: 20rem;
}

@media screen and (max-width : 991px ) {
  input:not([type='radio']):not([type='checkbox']),
  select,
  textarea {
    font-size: 1.8rem;
    padding: 1rem .8rem;
  }
  select {
    padding: 1rem .8rem;
  }
  .ios select {
    padding: 1.4rem .8rem;
  }
}




