@charset "UTF-8";
a {
  color: #707070;
  text-decoration: none;
  transition: all 0.3s ease-out; }
  a:hover {
    opacity: 0.7; }

/* Reset Style */
html {
  overflow-y: scroll; }

body {
  line-height: 1;
  color: #000; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

q:before, q:after {
  content: ''; }

img,
object,
embed {
  vertical-align: top; }

hr, legend {
  display: none; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%; }

img, abbr, acronym, fieldset {
  border: 0; }

li {
  list-style-type: none; }

/* YUI 3.4.1 (build 4118) Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License. http://yuilibrary.com/license/ */
body {
  font: 13px/1.231 arial,helvetica,clean,sans-serif;
  *font-size: small;
  *font: x-small; }

select, input, button, textarea {
  font: 99% arial,helvetica,clean,sans-serif; }

table {
  font-size: inherit;
  font: 100%; }

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%; }

html {
  font-size: 62.5%; }

body {
  font-size: 1.4rem;
  box-sizing: border-box; }

.sp {
  display: none; }
  @media screen and (max-width: 480px) {
    .sp {
      display: block; } }

.pc {
  display: block; }
  @media screen and (max-width: 480px) {
    .pc {
      display: none; } }

/* clearfix */
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; }

/* 大会 */
.competition {
  padding: 75px 0 75px;
  background-repeat: no-repeat;
  background-size: cover; }
  .competition.cat1 {
    background-image: url(../img/top/bg_competition_cat1.jpg); }
  .competition.cat2 {
    background-image: url(../img/top/bg_competition_cat2.jpg); }
  .competition .title-wrap {
    padding: 45px 0;
    margin: 0 0 30px 0;
    text-align: center; }
    .competition .title-wrap.cat1 {
      background-color: rgba(214, 18, 0, 0.8); }
    .competition .title-wrap.cat2 {
      background-color: rgba(30, 94, 216, 0.8); }
    .competition .title-wrap:hover {
      opacity: 0.7; }
    .competition .title {
      font-size: 3.0rem;
      color: #fff;
      position: relative; }
    .competition .title_sub {
      font-size: 1.3rem;
      color: #fff;
      position: relative; }
    .competition .cat1 .title:after {
      font-family: "Font Awesome 5 Free";
      content: '\f138';
      font-weight: bold;
      padding: 0 0 0 10px; }
      @media screen and (max-width: 480px) {
        .competition .title:after {
          display: block;
          margin: 18px 0 0 0; } }
    .competition .title__sub {
      position: absolute;
      top: -60px;
      right: calc(1028px / 2 - 85px);
      display: block;
      width: 190px;
      height: 35px;
      background: #fff;
      transform: skewX(-15deg); }
      @media screen and (max-width: 480px) {
        .competition .title__sub {
          right: calc(100vw / 2 - 100px); } }
      .competition .title__sub span {
        display: block;
        padding: 8px 0 0 0;
        transform: skewX(15deg);
        color: #1746A5;
        font-size: 1.6rem; }
    .competition .title__link {
      display: block; }
  .competition__nav.cat1 {
    background-color: rgba(214, 18, 0, 0.8); }
  .competition__nav.cat2 {
    background-color: rgba(30, 94, 216, 0.8); }
  .competition__nav__list {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .competition__nav__list {
        display: block; } }
  .competition__nav__listitem {
    width: 334px;
    height: 180px;
    display: inline-block;
    background: #000;
    transform: skewX(-15deg); }
    @media screen and (max-width: 480px) {
      .competition__nav__listitem {
        width: 100vw;
        height: 180px;
        transform: skewX(0deg);
        margin: 0 0 20px; }
        .competition__nav__listitem:last-child {
          margin: 0 0 0px; } }
  .competition__nav__link {
    width: 334px;
    height: 180px;
    display: block;
    position: relative;
    overflow: hidden; }
    .competition__nav__link:hover {
      opacity: 1.0; }
    @media screen and (max-width: 480px) {
      .competition__nav__link {
        width: 100vw; } }
  .competition__nav__img {
    position: absolute;
    height: 180px;
    transform: skewX(15deg);
    object-fit: cover;
    opacity: 0.3;
    left: -30px; }
    .competition__nav__img:hover {
      transition: 0.5s;
      opacity: 0.7; }
    @media screen and (max-width: 480px) {
      .competition__nav__img {
        width: 100vw;
        transform: skewX(0deg);
        left: 0; } }
  .competition__nav__text {
    color: #fff;
    text-align: center;
    margin: 60px auto;
    font-size: 1.8rem;
    letter-spacing: 0.1rem;
    transform: skewX(15deg);
    pointer-events: none; }
    @media screen and (max-width: 480px) {
      .competition__nav__text {
        transform: skewX(0deg); } }
    .competition__nav__text span {
      display: block;
      font-size: 3.0rem;
      font-weight: bold; }
    .competition__nav__text:hover {
      opacity: 1.0; }

/*----------------------------------------------------
	element style
----------------------------------------------------*/
body {
  background-color: #F5F5F5;
  color: #707070;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

input, textarea {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

* html body, * html input, * html textarea {
  font-family: "Noto Sans JP", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

.externalIcon {
  margin: 0 3px;
  vertical-align: middle; }

.inner {
  width: 1028px;
  margin: 0 auto; }
  @media screen and (max-width: 480px) {
    .inner {
      width: 100vw; } }

/*----------------------------------------------------
	ヘッダー
----------------------------------------------------*/
.header {
  z-index: 1111; }

/*----------------------------------------------------
	メイン
----------------------------------------------------*/
.main {
  z-index: 1; }

.column {
  width: 1028px;
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 480px) {
    .column {
      width: 100vw;
      flex-direction: column; } }
  .column .side {
    width: 270px;
    order: 1; }
    @media screen and (max-width: 480px) {
      .column .side {
        width: 80vw;
        margin: 0 auto;
        order: 2; } }
  .column .content {
    width: 710px;
    order: 2; }
    @media screen and (max-width: 480px) {
      .column .content {
        width: 80vw;
        margin: 0 auto;
        order: 1; } }

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%; }

/* ヘッダー */
.header {
  border-bottom: 5px solid #E3E3E3;
  position: relative; }
  @media screen and (max-width: 480px) {
    .header {
      overflow: hidden; } }
  .header .inner {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .header .inner {
        display: block; } }
  .header .logo {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 22px 15px 17px 0; }
    @media screen and (max-width: 480px) {
      .header .logo {
        margin: 20px 0 20px 20px;
        float: left; } }
    .header .logo__link {
      display: block; }
    .header .logo__img {
      vertical-align: middle; }
    .header .logo_jafa {
      width: 102px;
      margin: 0 35px 0 0; }
      @media screen and (max-width: 480px) {
        .header .logo_jafa {
          margin: 0 20px 0 0; } }
    .header .logo_flagfootball {
      width: 84px; }
  .header .bar {
    display: none; }
    @media screen and (max-width: 480px) {
      .header .bar {
        display: block;
        float: right;
        font-size: 3.0rem; } }
    .header .bar__check {
      display: none; }
    .header .bar__label {
      display: block;
      padding: 30px 30px;
      text-align: center; }
  .header .nav__wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 480px) {
      .header .nav__wrap {
        position: fixed;
        overflow-y: scroll;
        overflow-x: hidden;
        top: 100px;
        bottom: 0;
        left: 100vw;
        width: 100vw;
        height: calc( 100% - 100px );
        transition: left .5s, right .5s;
        background-color: rgba(255, 255, 255, 0.9);
        z-index: 9999;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 100px;
        display: block; } }
  @media screen and (max-width: 480px) {
    .header .nav__sp {
      height: 100%;
      overflow: auto;
      -webkit-overflow-scrolling: touch; } }
  .header .nav__list {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 10px 0 0; }
    @media screen and (max-width: 480px) {
      .header .nav__list {
        display: block;
        overflow: auto;
        margin: 0; } }
  .header .nav__listitem {
    margin: 0 0 0 0; }
    @media screen and (max-width: 480px) {
      .header .nav__listitem {
        border-bottom: 1px solid #B3B3B3;
        transform: skewX(0deg); } }
    @media screen and (max-width: 480px) {
      .header .nav__listitem:hover {
        background-color: transparent; } }
  .header .nav__link {
    text-decoration: none;
    text-align: center;
    display: block;
    padding: 38px 25px 24px;
    font-weight: bold;
    color: #707070;
    transform: skewX(-15deg); }
    @media screen and (max-width: 480px) {
      .header .nav__link {
        padding: 12px 10px;
        position: relative;
        font-size: 1.6rem;
        text-align: left;
        text-indent: 2rem;
        transform: skewX(0deg); } }
    .header .nav__link span {
      display: block;
      transform: skewX(15deg); }
      @media screen and (max-width: 480px) {
        .header .nav__link span {
          transform: skewX(0deg); } }
    .header .nav__link::after {
      font-family: "Font Awesome 5 Free";
      content: '\f107';
      font-weight: bold;
      display: block;
      font-size: 1.4rem;
      padding: 10px 0 0 0;
      transform: skewX(15deg); }
      @media screen and (max-width: 480px) {
        .header .nav__link::after {
          position: absolute;
          top: 11px;
          right: 2rem;
          content: '\f105';
          display: inline-block;
          padding: 0.3em;
          transform: skewX(0deg); } }
    .header .nav__link:hover {
      color: #fff;
      opacity: 1.0;
      background-color: #1A1A1A; }
      @media screen and (max-width: 480px) {
        .header .nav__link:hover {
          color: #707070; } }
  .header .nav .nav__listitem:hover .nav__link {
    color: #fff;
    opacity: 1.0;
    background-color: #1A1A1A; }
  .header .nav__sub {
    display: none;
    position: fixed;
    top: 106px;
    left: 0;
    width: 100vw;
    background: rgba(255, 255, 255, 0.8);
    z-index: 8888;
    border-top: 5px solid #E3E3E3;
    z-index: 1111; }
    @media screen and (max-width: 480px) {
      .header .nav__sub {
        display: block;
        position: static;
        background: none;
        transform: skewX(0deg);
        border-top: none; } }
  .header .nav__sub-List {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0; }
    @media screen and (max-width: 480px) {
      .header .nav__sub-List {
        display: block;
        position: static;
        background: none; } }
    .header .nav__sub-List.cat1 {
      margin: 0 0 0 218px; }
      @media screen and (max-width: 480px) {
        .header .nav__sub-List.cat1 {
          margin: 0; } }
    .header .nav__sub-List.cat2 {
      margin: 0 0 0 478px; }
      @media screen and (max-width: 480px) {
        .header .nav__sub-List.cat2 {
          margin: 0; } }
  .header .nav__sub-listitem {
    transform: skewX(-15deg); }
    @media screen and (max-width: 480px) {
      .header .nav__sub-listitem {
        margin: 0;
        border-top: 1px solid #e2e2e2;
        transform: skewX(0deg); } }
    .header .nav__sub-listitem:hover {
      background-color: #1A1A1A; }
      @media screen and (max-width: 480px) {
        .header .nav__sub-listitem:hover {
          background-color: #1A1A1A;
          color: #fff; } }
  .header .nav__sub-link {
    padding: 26px 30px;
    display: block;
    transform: skewX(15deg);
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      .header .nav__sub-link {
        padding: 12px 10px;
        position: relative;
        font-size: 1.4rem;
        text-align: left;
        text-indent: 3rem;
        transform: skewX(0deg); } }
    .header .nav__sub-link::before {
      font-family: "Font Awesome 5 Free";
      content: '';
      font-weight: bold;
      font-size: 1.4rem;
      padding: 0 5px 0 0; }
      @media screen and (max-width: 480px) {
        .header .nav__sub-link::before {
          display: none; } }
    @media screen and (max-width: 480px) {
      .header .nav__sub-link::after {
        position: absolute;
        top: 9px;
        right: 2rem;
        font-family: "Font Awesome 5 Free";
        font-weight: bold;
        content: '\f105';
        display: inline-block;
        padding: 0.3em; } }
    .header .nav__sub-link:hover {
      color: #fff;
      opacity: 1; }
      @media screen and (max-width: 480px) {
        .header .nav__sub-link:hover {
          color: #fff; } }
  .header .nav .nav__listitem:hover > .nav__sub {
    display: block; }
  .header .right {
    float: right; }
    @media screen and (max-width: 480px) {
      .header .right {
        margin: 30px 0;
        float: none; } }
  .header .sns {
    margin: 15px 0 10px 0; }
    @media screen and (max-width: 480px) {
      .header .sns {
        width: 200px;
        margin: 0 auto 25px; } }
    .header .sns__list {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-around; }
    .header .sns__link {
      font-size: 2.8rem; }
      @media screen and (max-width: 480px) {
        .header .sns__link {
          font-size: 4.2rem; } }
    .header .sns_youtube {
      color: #FF0000; }
    .header .sns_facebook {
      color: #4267B2; }
    .header .sns_twitter {
      color: #1DA1F2; }
  @media screen and (max-width: 480px) {
    .header .info {
      margin: 0 auto 25px;
      text-align: center; } }
  .header .bar__check:checked + .nav__wrap {
    left: 0; }

/* フッター */
.footer {
  background-color: #fff; }
  .footer .pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999; }
    .footer .pagetop__link {
      background-color: #e2e2e2;
      color: #fff;
      width: 40px;
      height: 40px;
      line-height: 40px;
      text-align: center;
      display: block; }
  .footer .main {
    padding: 40px 0; }
    .footer .main .inner {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between; }
  .footer .copyright {
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 15px 0;
    font-size: 1.0rem;
    line-height: 150%; }
  @media screen and (max-width: 480px) {
    .footer .logo {
      margin: 0 auto; } }
  .footer .logo__link {
    display: block;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 480px) {
      .footer .logo__link {
        height: 56px; } }
    .footer .logo__link span {
      display: block;
      margin: 10px 0 0 0;
      font-size: 1.4rem;
      font-weight: bold; }
    @media screen and (max-width: 480px) {
      .footer .logo__link:last-of-type span {
        margin: 18px 0 0 0; } }
  .footer .logo__img {
    vertical-align: middle;
    margin: 0 10px 0 0; }
  .footer .logo_jafa {
    width: 59px;
    margin-bottom: 30px; }
  .footer .logo_flagfootball {
    width: 59px;
    height: 41px; }
  @media screen and (max-width: 480px) {
    .footer .nav {
      display: none; } }
  .footer .nav__listitem {
    margin: 0 0 0 0; }
    .footer .nav__listitem.sub {
      margin: 0 0 0 1rem; }
  .footer .nav__link {
    color: #707070;
    text-decoration: none;
    display: block;
    padding: 8px 0px;
    font-size: 1.4rem;
    font-weight: bold; }
  .footer .nav__sub {
    display: none;
    position: absolute;
    left: 0;
    top: 105px;
    width: 100%;
    background: rgba(255, 255, 255, 0.7);
    z-index: 8888; }

.sidenav {
  width: 270px;
  background-color: #fff;
  margin: 0 0 50px; }
  @media screen and (max-width: 480px) {
    .sidenav {
      width: 80vw;
      margin: 0 auto 100px; } }
  .sidenav__list {
    border-top: 1px solid #EBEBEB; }
  .sidenav__listitem {
    border-bottom: 1px solid #EBEBEB; }
    .sidenav__listitem .text {
      display: block;
      padding: 10px; }
  .sidenav__lebel1 {
    display: block;
    width: calc(100% - 20px);
    padding: 26px 10px;
    position: relative;
    font-size: 1.4rem;
    font-weight: bold; }
    .sidenav__lebel1:after {
      position: absolute;
      right: 10px;
      top: 18px;
      font-family: "Font Awesome 5 Free";
      content: '\f0da';
      font-weight: bold;
      display: block;
      font-size: 1.2rem;
      padding: 10px 0 0 0; }
    .sidenav__lebel1.cat1 {
      background-color: #FFF1EB;
      color: #D61200; }
    .sidenav__lebel1.cat2 {
      background-color: #E8F7FF;
      color: #1E5ED8; }
    .sidenav__lebel1.cat2028 {
      background-color: #e2e2e2;
      color: #707070; }
  .sidenav__lebel2 {
    display: block;
    width: calc(100% - 20px);
    padding: 13px 10px;
    position: relative;
    font-size: 1.4rem;
    font-weight: bold; }
  .sidenav__lebel3 {
    display: block;
    width: calc(100% - 20px);
    padding: 0px 10px 14px;
    position: relative;
    font-size: 1.4rem;
    font-weight: bold; }
    .sidenav__lebel3:before {
      left: 10px;
      top: 7px;
      content: '-';
      display: inline-block;
      font-size: 1.2rem;
      padding: 0 10px 0 0; }

#top {
  /* KV*/
  /* NEWS */
  /* 2028 */
  /* スポンサー */ }
  #top .kv {
    width: 100%;
    height: 480px;
    overflow: hidden; }
    #top .kv__listitem {
      width: 100%;
      height: 480px; }
    #top .kv__img {
      width: 100%;
      height: 100%;
      min-height: 480px;
      object-fit: cover;
      font-family: 'object-fit: cover;';
      /*IE対策*/ }
  #top .news {
    background-color: #555;
    background-image: url(../img/top/bg_news.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 40px 0; }
    @media screen and (max-width: 480px) {
      #top .news {
        padding: 50px 0; } }
    #top .news .inner {
      width: 850px; }
      @media screen and (max-width: 480px) {
        #top .news .inner {
          width: 80vw;
          margin: 0 auto; } }
    #top .news .title {
      color: #fff;
      font-size: 3.0rem;
      text-align: center;
      font-weight: normal;
      margin: 0 0 20px; }
    #top .news__list {
      margin: 0 0 40px; }
    #top .news__listitem {
      padding: 7px 0;
      border-bottom: 1px dotted #fff; }
      @media screen and (max-width: 480px) {
        #top .news__listitem {
          margin: 0 0 10px; } }
    #top .news__link {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin: 0 10px; }
      @media screen and (max-width: 480px) {
        #top .news__link {
          display: inline-block;
          margin: 0; } }
      #top .news__link .date {
        color: #fff;
        font-size: 1.4rem;
        margin: 0 10px 0 0; }
        @media screen and (max-width: 480px) {
          #top .news__link .date {
            float: left;
            margin: 0 10px 10px 0; } }
      #top .news__link .category {
        color: #fff;
        font-size: 1.0rem;
        padding: 4px;
        margin: 0 10px 0 0;
        width: 160px;
        text-align: center;
        background-color: #B3B3B3;
        white-space: nowrap; }
        @media screen and (max-width: 480px) {
          #top .news__link .category {
            float: left;
            padding: 3px 4px; } }
        #top .news__link .category.cat1 {
          background-color: #D61200; }
        #top .news__link .category.cat2 {
          background-color: #1E5ED8; }
      #top .news__link .content {
        color: #fff;
        font-size: 1.4rem;
        width: 490px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap; }
        @media screen and (max-width: 480px) {
          #top .news__link .content {
            width: auto;
            margin: 10px 0 0;
            clear: both;
            display: block;
            overflow: auto;
            white-space: normal; } }
    #top .news .bottom {
      text-align: center; }
  #top .special {
    padding: 80px 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../img/top/bg_special.jpg); }
    #top .special__link {
      display: block;
      background-color: rgba(210, 212, 104, 0.5);
      padding: 50px 0; }
      #top .special__link .title {
        font-size: 4.0rem;
        color: #fff;
        font-style: italic;
        text-align: center; }
        @media screen and (max-width: 480px) {
          #top .special__link .title {
            font-size: 3.0rem; } }
        #top .special__link .title:after {
          font-family: "Font Awesome 5 Free";
          content: '\f138';
          font-weight: bold;
          padding: 0 0 0 10px;
          font-style: normal; }
          @media screen and (max-width: 480px) {
            #top .special__link .title:after {
              display: block;
              margin: 18px 0 0 0; } }
      #top .special__link .text {
        color: #fff;
        line-height: 150%; }
  #top .sponsor {
    background-color: #555;
    background-image: url(../img/top/bg_news.png);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 80px 0; }
    @media screen and (max-width: 480px) {
      #top .sponsor {
        padding: 50px 35px; } }
    @media screen and (max-width: 480px) {
      #top .sponsor .inner {
        width: auto; } }
    #top .sponsor__list {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        #top .sponsor__list {
          display: block; } }
    #top .sponsor__listitem {
      width: 240px;
      height: 50px; }
      @media screen and (max-width: 480px) {
        #top .sponsor__listitem {
          width: 80vw;
          margin: 0 0 20px; }
          #top .sponsor__listitem:nth-child(4) {
            margin: 0; } }
    #top .sponsor__link {
      display: block; }
    #top .sponsor__img {
      width: 100%;
      border-radius: 5px; }
      @media screen and (max-width: 480px) {
        #top .sponsor__img {
          width: 100%;
          height: auto; } }

#introduction {
  /* KV*/ }
  #introduction .kv {
    width: 100%;
    height: 556px;
    overflow: hidden;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover; }
    #introduction .kv.cat1 {
      background-image: url(../img/introduction/bg_kv_cat1.jpg); }
    #introduction .kv.cat2 {
      background-image: url(../img/introduction/bg_kv_cat2.jpg); }
    @media screen and (max-width: 480px) {
      #introduction .kv {
        height: auto;
        background-image: none !important;
        background-color: #fff; } }
    #introduction .kv__listitem {
      width: 100%;
      height: 556px; }
      @media screen and (max-width: 480px) {
        #introduction .kv__listitem {
          height: 375px; } }
    #introduction .kv__img {
      width: 100%;
      height: 100%;
      min-height: 556px;
      object-fit: cover;
      font-family: 'object-fit: cover;';
      /*IE対策*/ }
      @media screen and (max-width: 480px) {
        #introduction .kv__img {
          min-height: 375px; } }
    #introduction .kv .slick__wrap {
      width: calc(100vw / 2 + 200px); }
    #introduction .kv .slick-dots {
      top: 520px; }
    #introduction .kv__desc {
      position: absolute;
      top: 0;
      left: calc(100vw / 2 + 100px);
      display: block;
      width: 475px;
      height: 557px;
      transform: skewX(-15deg); }
      #introduction .kv__desc.cat1 {
        background-color: #D61200; }
      #introduction .kv__desc.cat2 {
        background-color: #1E5ED8; }
      @media screen and (max-width: 480px) {
        #introduction .kv__desc {
          position: static;
          margin: -90px auto 0;
          width: calc(100vw - 80px);
          height: auto;
          transform: skewX(0deg);
          background-color: transparent; } }
      #introduction .kv__desc__wrap {
        position: relative; }
        #introduction .kv__desc__wrap .title {
          position: absolute;
          top: 95px;
          left: -100px;
          background-color: #1A1A1A;
          padding: 20px 50px;
          transform: skewX(0deg); }
          #introduction .kv__desc__wrap .title.cat2 {
            left: -150px; }
          @media screen and (max-width: 480px) {
            #introduction .kv__desc__wrap .title {
              position: relative;
              transform: skewX(-15deg);
              font-size: 1.6rem;
              padding: 10px;
              z-index: 100;
              top: -10px;
              left: 0;
              width: calc(100vw - 100px);
              margin: 0 auto; }
              #introduction .kv__desc__wrap .title.cat2 {
                left: 0; } }
          #introduction .kv__desc__wrap .title span {
            transform: skewX(15deg);
            display: block;
            color: #fff;
            font-size: 2.8rem; }
            @media screen and (max-width: 480px) {
              #introduction .kv__desc__wrap .title span {
                transform: skewX(15deg);
                font-size: 1.6rem;
                text-align: center; } }
        #introduction .kv__desc__wrap .desc {
          color: #fff;
          position: absolute;
          top: 210px;
          left: 55px;
          width: 360px;
          transform: skewX(0deg); }
          @media screen and (max-width: 480px) {
            #introduction .kv__desc__wrap .desc {
              position: relative;
              width: calc(100% - 40px);
              padding: 20px 20px 20px 20px;
              margin: -20px auto 0;
              z-index: 1;
              top: 0;
              left: 0; } }
          @media screen and (max-width: 480px) {
            #introduction .kv__desc__wrap .desc .cat1 {
              background-color: #D61200; } }
          @media screen and (max-width: 480px) {
            #introduction .kv__desc__wrap .desc .cat2 {
              background-color: #1E5ED8; } }
          #introduction .kv__desc__wrap .desc p {
            transform: skewX(15deg);
            color: #fff;
            line-height: 175%;
            font-size: 1.8rem; }
            @media screen and (max-width: 480px) {
              #introduction .kv__desc__wrap .desc p {
                transform: skewX(0deg);
                font-size: 1.4rem; } }
  #introduction .download {
    background-color: #fff;
    padding: 40px 0;
    text-align: center; }
    @media screen and (max-width: 480px) {
      #introduction .download .btn {
        display: block;
        margin: 0 auto 20px; }
        #introduction .download .btn:last-child {
          margin: 0 auto; } }
  #introduction .tools {
    padding: 80px 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(../img/introduction/bg_tools.jpg);
    text-align: center;
    color: #fff; }
    #introduction .tools p {
      line-height: 150%; }
    @media screen and (max-width: 480px) {
      #introduction .tools {
        padding: 50px 40px; } }
    #introduction .tools .title {
      font-size: 2.6rem;
      margin: 0 0 30px; }
    #introduction .tools .ball {
      width: 850px;
      margin: 30px auto;
      color: #666; }
      @media screen and (max-width: 480px) {
        #introduction .tools .ball {
          width: calc( 100vw - 80px); } }
      #introduction .tools .ball__list {
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
      #introduction .tools .ball__listitem {
        width: 410px;
        background-color: #fff;
        margin: 0 0 30px;
        padding: 25px 0;
        text-align: center; }
        @media screen and (max-width: 480px) {
          #introduction .tools .ball__listitem {
            width: 100%;
            padding: 25px; } }
        #introduction .tools .ball__listitem:nth-child(3), #introduction .tools .ball__listitem:nth-child(4) {
          margin: 0; }
          @media screen and (max-width: 480px) {
            #introduction .tools .ball__listitem:nth-child(3), #introduction .tools .ball__listitem:nth-child(4) {
              margin: 0 0 30px; } }
        #introduction .tools .ball__listitem .title {
          font-size: 2.0rem;
          margin: 0 0 10px; }
        #introduction .tools .ball__listitem p {
          line-height: 150%;
          font-size: 1.4rem; }
    #introduction .tools .item {
      width: 1030px;
      margin: 60px auto 0;
      color: #666; }
      @media screen and (max-width: 480px) {
        #introduction .tools .item {
          width: calc( 100vw - 80px); } }
      #introduction .tools .item__list {
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
      #introduction .tools .item__listitem {
        width: 230px;
        background-color: #fff;
        margin: 0 0 30px;
        padding: 5px 0 25px;
        text-align: center; }
        @media screen and (max-width: 480px) {
          #introduction .tools .item__listitem {
            width: 100%;
            padding: 5px 25px 25px 25px; } }
        #introduction .tools .item__listitem:nth-child(5), #introduction .tools .item__listitem:nth-child(6), #introduction .tools .item__listitem:nth-child(7), #introduction .tools .item__listitem:nth-child(8) {
          margin: 0; }
          @media screen and (max-width: 480px) {
            #introduction .tools .item__listitem:nth-child(5), #introduction .tools .item__listitem:nth-child(6), #introduction .tools .item__listitem:nth-child(7), #introduction .tools .item__listitem:nth-child(8) {
              margin: 0 0 30px; } }
      #introduction .tools .item__img {
        width: 100%; }
      #introduction .tools .item .maker {
        display: inline-block;
        margin: 0 0 5px; }
      #introduction .tools .item .name {
        display: block;
        font-size: 1.8rem;
        line-height: 130%;
        margin: 0 0 5px;
        height: 47px; }
      #introduction .tools .item .itemno {
        display: block;
        font-size: 1.2rem;
        color: #999;
        margin: 0 0 10px; }
  #introduction .information {
    padding: 80px 0;
    background-color: #555;
    text-align: center;
    color: #fff;
    background-image: url(../img/top/bg_news.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left bottom;
    padding: 40px 0; }
    #introduction .information .title {
      font-size: 2.6rem;
      margin: 0 0 30px; }
    #introduction .information__list {
      width: 1028px;
      margin: 0 auto 70px; }
      @media screen and (max-width: 480px) {
        #introduction .information__list {
          width: calc( 100vw - 80px); } }
    #introduction .information__listitem {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      margin: 0 auto 10px;
      padding: 20px;
      background-color: #fff;
      color: #707070;
      font-weight: bold; }
      @media screen and (max-width: 480px) {
        #introduction .information__listitem {
          display: block;
          margin: 0 auto 20px; } }
      #introduction .information__listitem .title {
        margin: 0;
        text-align: left;
        font-size: 2.0rem;
        line-height: 31px; }
        @media screen and (max-width: 480px) {
          #introduction .information__listitem .title {
            text-align: center;
            margin: 0 0 10px; } }
        @media screen and (min-width: 769px) {
          #introduction .information__listitem .title {
            width: 15%; } }
      #introduction .information__listitem .date {
        font-size: 2.0rem;
        line-height: 31px; }
        @media screen and (max-width: 480px) {
          #introduction .information__listitem .date {
            margin: 0 0 10px; } }
        @media screen and (min-width: 769px) {
          #introduction .information__listitem .date {
            width: 25%; } }
      #introduction .information__listitem .place {
        font-size: 2.0rem;
        line-height: 31px; }
        @media screen and (max-width: 480px) {
          #introduction .information__listitem .place {
            margin: 0 0 10px; } }
        @media screen and (min-width: 769px) {
          #introduction .information__listitem .place {
            width: 45%; } }
      #introduction .information__listitem .btn {
        padding: 6px 0;
        margin: 0; }
        @media screen and (max-width: 480px) {
          #introduction .information__listitem .btn {
            margin: 0 0 10px; } }
        @media screen and (min-width: 769px) {
          #introduction .information__listitem .btn {
            width: 15%; } }
    #introduction .information .competition__list {
      width: 1028px;
      margin: 0 auto 40px; }
      @media screen and (max-width: 480px) {
        #introduction .information .competition__list {
          width: calc( 100vw - 80px); } }
    #introduction .information .competition__listitem {
      display: -webkit-box;
      display: -moz-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      justify-content: space-between;
      margin: 0 auto 10px;
      padding: 20px;
      background-color: #fff;
      color: #707070;
      font-weight: bold; }
      @media screen and (max-width: 480px) {
        #introduction .information .competition__listitem {
          margin: 0 auto 20px; } }
      #introduction .information .competition__listitem .title {
        margin: 0;
        text-align: left;
        font-size: 2.0rem;
        line-height: 31px; }
      #introduction .information .competition__listitem .sns__list {
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-around; }
      #introduction .information .competition__listitem .sns__link {
        font-size: 2.4rem; }
        @media screen and (max-width: 480px) {
          #introduction .information .competition__listitem .sns__link {
            font-size: 3.0rem; } }
      #introduction .information .competition__listitem .sns_facebook {
        color: #4267B2;
        margin: 0 0px 0 0; }
      #introduction .information .competition__listitem .sns_twitter {
        color: #1DA1F2;
        margin: 0 0 0 20px; }

#result .kv {
  background-color: #555;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 0 50px;
  padding: 70px 0;
  text-align: center;
  height: 240px;
  box-sizing: border-box; }
  #result .kv.cat1 {
    background-image: url(../img/result/bg_cat1.jpg); }
  #result .kv.cat2 {
    background-image: url(../img/result/bg_cat2.jpg); }
  @media screen and (max-width: 480px) {
    #result .kv {
      height: 290px;
      padding: 80px 0; } }
  #result .kv .title {
    font-size: 3.0rem;
    color: #fff;
    text-align: center;
    position: relative;
    height: 100px;
    padding: 45px 0 0 0;
    box-sizing: border-box; }
    #result .kv .title.cat1 {
      background-color: rgba(214, 18, 0, 0.56); }
    #result .kv .title.cat2 {
      background-color: rgba(30, 94, 216, 0.56); }
    @media screen and (max-width: 480px) {
      #result .kv .title {
        height: 130px; } }
    #result .kv .title__sub {
      display: block;
      margin: 0 auto;
      width: 360px;
      height: 42px;
      background: #fff;
      transform: skewX(-15deg);
      position: absolute;
      top: -10px;
      left: calc(100vw/2 - 180px); }
      @media screen and (max-width: 480px) {
        #result .kv .title__sub {
          width: 300px;
          height: 36px;
          left: calc(100vw/2 - 150px); } }
      #result .kv .title__sub span {
        display: block;
        padding: 8px 0 0 0;
        transform: skewX(15deg);
        font-size: 2.0rem; }
        @media screen and (max-width: 480px) {
          #result .kv .title__sub span {
            font-size: 1.7rem; } }
        #result .kv .title__sub span.cat1 {
          color: #D61200; }
        #result .kv .title__sub span.cat2 {
          color: #1E5ED8; }
#result .content {
  box-sizing: border-box;
  width: 710px;
  background-color: #fff;
  margin: 0 0 50px; }
  @media screen and (max-width: 480px) {
    #result .content {
      width: 80vw;
      margin: 0 auto 30px; } }
  #result .content h2 {
    font-size: 2.5rem;
    margin: 20px 20px 20px; }
    #result .content h2.cat1 {
      color: #D61200; }
    #result .content h2.cat2 {
      color: #1E5ED8; }
  #result .content h3 {
    background-color: #F5F5F5;
    font-size: 1.8rem;
    padding: 20px;
    margin: 0 0 20px; }
  #result .content h4 {
    font-size: 1.8rem;
    margin: 0 20px 20px; }
#result .result__list {
  border-bottom: 3px solid #e2e2e2;
  margin: 0 20px 30px; }
#result .result__listitem .head {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  padding: 5px 15px; }
  #result .result__listitem .head.cat1 {
    background-color: #FFF1EB; }
  #result .result__listitem .head.cat2 {
    background-color: #E8F7FF; }
  @media screen and (max-width: 480px) {
    #result .result__listitem .head {
      flex-wrap: wrap;
      padding: 5px 10px 7px 10px; } }
#result .result__listitem .team {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  padding: 15px; }
  @media screen and (max-width: 480px) {
    #result .result__listitem .team {
      padding: 10px 5px; } }
  #result .result__listitem .team:not(:last-child) {
    border-bottom: 1px solid #e2e2e2; }
#result .result__listitem .category {
  background-color: #F5F5F5;
  padding: 4px 15px;
  font-weight: bold;
  font-size: 1.3rem; }
#result .result__listitem .date {
  line-height: 190%;
  margin: 0 10px 0 0;
  font-weight: bold; }
  @media screen and (max-width: 480px) {
    #result .result__listitem .date {
      width: 80vw; } }
#result .result__listitem .time {
  line-height: 190%;
  margin: 0 10px 0 0;
  font-weight: bold; }
#result .result__listitem .place {
  line-height: 190%;
  margin: 0 10px 0 0; }
#result .result__listitem .name {
  width: 40%;
  text-align: center;
  margin: 3px 0 0 0; }
  @media screen and (max-width: 480px) {
    #result .result__listitem .name {
      width: calc( (100% - 40px) / 2 );
      font-size: 1.2rem;
      margin: 0px 0 0 0; } }
#result .result__listitem .score {
  width: 20%;
  font-size: 1.8rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  text-align: center; }
  @media screen and (max-width: 480px) {
    #result .result__listitem .score {
      width: 60px;
      font-size: 1.6rem;
      letter-spacing: 0rem;
      font-weight: bold;
      text-align: center; } }
#result .information .competition__list {
  margin: 0 20px 30px; }
  @media screen and (max-width: 480px) {
    #result .information .competition__list {
      width: calc( 100vw - 115px); } }
#result .information .competition__listitem {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 10px;
  padding: 10px 20px;
  background-color: #F5F5F5;
  color: #707070;
  font-weight: bold; }
  @media screen and (max-width: 480px) {
    #result .information .competition__listitem {
      margin: 0 auto 20px; } }
  #result .information .competition__listitem .title {
    margin: 0;
    text-align: left;
    font-size: 2.0rem;
    line-height: 31px; }
  #result .information .competition__listitem .sns__list {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-around; }
  #result .information .competition__listitem .sns__link {
    font-size: 2.4rem; }
    @media screen and (max-width: 480px) {
      #result .information .competition__listitem .sns__link {
        font-size: 3.0rem; } }
  #result .information .competition__listitem .sns_facebook {
    color: #4267B2;
    margin: 0 0px 0 0; }
  #result .information .competition__listitem .sns_twitter {
    color: #1DA1F2;
    margin: 0 0 0 20px; }

#team .kv {
  background-color: #555;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 0 50px;
  padding: 70px 0;
  text-align: center;
  height: 240px;
  box-sizing: border-box; }
  @media screen and (max-width: 480px) {
    #team .kv {
      height: 290px;
      padding: 80px 0; } }
  #team .kv.cat1 {
    background-image: url(../img/result/bg_cat1.jpg); }
  #team .kv.cat2 {
    background-image: url(../img/result/bg_cat2.jpg); }
  #team .kv .title {
    font-size: 3.0rem;
    color: #fff;
    text-align: center;
    position: relative;
    height: 100px;
    padding: 45px 0 0 0;
    box-sizing: border-box; }
    @media screen and (max-width: 480px) {
      #team .kv .title {
        height: 130px; } }
    #team .kv .title.cat1 {
      background-color: rgba(214, 18, 0, 0.56); }
    #team .kv .title.cat2 {
      background-color: rgba(30, 94, 216, 0.56); }
    #team .kv .title__sub {
      display: block;
      margin: 0 auto;
      width: 420px;
      height: 42px;
      background: #fff;
      transform: skewX(-15deg);
      position: absolute;
      top: -10px;
      left: calc(100vw/2 - 180px); }
      @media screen and (max-width: 480px) {
        #team .kv .title__sub {
          width: 300px;
          height: 36px;
          left: calc(100vw/2 - 150px); } }
      #team .kv .title__sub span {
        display: block;
        padding: 8px 0 0 0;
        transform: skewX(15deg);
        font-size: 2.0rem; }
        #team .kv .title__sub span.cat1 {
          color: #D61200; }
        #team .kv .title__sub span.cat2 {
          color: #1E5ED8; }
        @media screen and (max-width: 480px) {
          #team .kv .title__sub span {
            font-size: 1.7rem; } }
#team .content {
  box-sizing: border-box;
  width: 100%;
  padding: 20px;
  background-color: #fff;
  margin: 0 0 50px; }
  @media screen and (max-width: 480px) {
    #team .content {
      width: 90vw;
      margin: 0 auto 30px; } }
  #team .content .title-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    margin: 0 0 20px 0; }
    @media screen and (max-width: 480px) {
      #team .content .title-wrap {
        flex-direction: column-reverse;
        margin: 0 auto 30px; } }
  #team .content .head-title1 {
    font-size: 1.8rem;
    padding: 8px 0; }
    @media screen and (max-width: 480px) {
      #team .content .head-title1 {
        margin: 0 0 10px 0; } }
  #team .content .head-title2 {
    font-size: 1.6rem;
    padding: 8px 0;
    margin: 0 0 5px; }
    @media screen and (max-width: 480px) {
      #team .content .head-title2 {
        margin: 0 0 10px 0; } }
  #team .content .sort {
    position: relative;
    width: 200px;
    margin: 0 20px 0 0;
    box-sizing: border-box; }
    @media screen and (max-width: 480px) {
      #team .content .sort {
        width: 100%; } }
    #team .content .sort::after {
      font-family: "Font Awesome 5 Free";
      content: '\f0d7';
      font-weight: bold;
      position: absolute;
      right: 10px;
      top: 12px; }
    #team .content .sort__main {
      border: 1px solid #e2e2e2;
      padding: 10px 20px 10px 10px;
      font-size: 1.4rem; }
    #team .content .sort__sub-list {
      display: none;
      z-index: 100; }
    #team .content .sort__sub-listitem {
      width: 200px;
      box-sizing: border-box;
      border: 1px solid #e2e2e2;
      border-top: none; }
      @media screen and (max-width: 480px) {
        #team .content .sort__sub-listitem {
          width: calc( 80vw - 40px); } }
    #team .content .sort__sub-link {
      display: block;
      padding: 10px 20px 10px 10px;
      background-color: #fff; }
      #team .content .sort__sub-link:hover {
        background-color: #e2e2e2;
        color: #1A1A1A;
        opacity: 1; }
    #team .content .sort:hover .sort__sub-list {
      position: absolute;
      display: block; }
#team .team__list {
  border-top: 1px solid #e2e2e2;
  margin: 0 0 50px; }
#team .team__listitem {
  border-bottom: 1px solid #e2e2e2;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-start;
  padding: 5px 15px 5px 5px; }
  @media screen and (max-width: 480px) {
    #team .team__listitem {
      flex-direction: column-reverse; } }
  #team .team__listitem .name {
    width: 60%;
    margin: 0 20px 0 0;
    padding: 5px 0; }
    @media screen and (max-width: 480px) {
      #team .team__listitem .name {
        width: calc(80vw - 20px - 105px);
        font-size: 1.4rem;
        margin: 0px 0 0 0;
        padding: 5px 0 0; } }
  #team .team__listitem .area {
    padding: 5px 0;
    width: 25%;
    font-size: 1.2rem;
    color: #B3B3B3; }
    @media screen and (max-width: 480px) {
      #team .team__listitem .area {
        width: calc(80vw - 20px - 105px);
        padding: 0; } }
  #team .team__listitem .sns {
    width: 20px;
    font-size: 2.1rem;
    position: absolute; }
    #team .team__listitem .sns_website {
      right: 80px;
      font-size: 1.9rem;
      color: #707070; }
      @media screen and (max-width: 480px) {
        #team .team__listitem .sns_website {
          right: 6.7rem;
          width: 1.5rem; } }
    #team .team__listitem .sns_facebook {
      right: 45px;
      color: #4267B2; }
      @media screen and (max-width: 480px) {
        #team .team__listitem .sns_facebook {
          right: 4rem;
          width: 1.5rem; } }
    #team .team__listitem .sns_twitter {
      right: 10px;
      color: #1DA1F2; }
      @media screen and (max-width: 480px) {
        #team .team__listitem .sns_twitter {
          right: 1rem; } }
    @media screen and (max-width: 480px) {
      #team .team__listitem .sns {
        width: 1.5rem;
        top: 10px; } }

#news .kv {
  background-color: #555;
  background-image: url(../img/news/bg_kv.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 0 50px;
  padding: 70px 0;
  text-align: center;
  height: 240px;
  box-sizing: border-box; }
  @media screen and (max-width: 480px) {
    #news .kv {
      height: 290px;
      padding: 80px 0; } }
  #news .kv .title {
    font-size: 3.0rem;
    color: #fff;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.56);
    position: relative;
    height: 100px;
    padding: 30px 0 0 0;
    box-sizing: border-box; }
    @media screen and (max-width: 480px) {
      #news .kv .title {
        height: 130px;
        padding: 42px 0 0 0; } }
#news .content {
  box-sizing: border-box;
  width: 100%;
  padding: 30px 20px;
  background-color: #fff;
  margin: 0 0 50px; }
  @media screen and (max-width: 480px) {
    #news .content {
      width: 90vw;
      margin: 0 auto 30px; } }
#news .news__list {
  border-top: 1px solid #e2e2e2;
  margin: 0 0 30px; }
#news .news__listitem {
  border-bottom: 1px solid #e2e2e2;
  position: relative;
  justify-content: flex-start;
  padding: 15px 5px; }
  #news .news__listitem .date {
    font-size: 1.4rem;
    margin: 0 10px 10px 0;
    display: inline-block; }
    @media screen and (max-width: 480px) {
      #news .news__listitem .date {
        margin: 0 0 5px 0; } }
  #news .news__listitem .category {
    color: #fff;
    font-size: 1.0rem;
    padding: 4px;
    margin: 0 10px 0 0;
    width: 160px;
    text-align: center;
    display: inline-block;
    background-color: #B3B3B3;
    white-space: nowrap; }
    @media screen and (max-width: 480px) {
      #news .news__listitem .category {
        float: left;
        padding: 3px 4px; } }
    #news .news__listitem .category.cat1 {
      background-color: #D61200; }
    #news .news__listitem .category.cat2 {
      background-color: #1E5ED8; }
    @media screen and (max-width: 480px) {
      #news .news__listitem .category {
        margin: 0 0 5px 0; } }
  #news .news__listitem .title {
    font-size: 1.4rem;
    margin: 5px 0 0 0;
    line-height: 150%;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      #news .news__listitem .title {
        margin: 10px 0 0;
        clear: both;
        display: block; } }
#news .news .bottom {
  text-align: center; }
#news .news .pagenation {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between; }
#news .news-detail__head {
  margin: 0 0 20px;
  border-bottom: 1px dotted #e2e2e2; }
  #news .news-detail__head .date {
    font-size: 1.4rem;
    margin: 0 10px 5px 0;
    display: block; }
    @media screen and (max-width: 480px) {
      #news .news-detail__head .date {
        margin: 0 0 5px 0; } }
  #news .news-detail__head .category {
    color: #fff;
    font-size: 1.0rem;
    padding: 4px;
    margin: 0 10px 0 0;
    width: 160px;
    text-align: center;
    display: block;
    background-color: #B3B3B3;
    white-space: nowrap; }
    @media screen and (max-width: 480px) {
      #news .news-detail__head .category {
        float: left;
        padding: 3px 4px; } }
    #news .news-detail__head .category.cat1 {
      background-color: #D61200; }
    #news .news-detail__head .category.cat2 {
      background-color: #1E5ED8; }
    @media screen and (max-width: 480px) {
      #news .news-detail__head .category {
        margin: 0 0 5px 0; } }
  #news .news-detail__head .title {
    font-size: 1.6rem;
    margin: 10px 0 10px 0;
    line-height: 150%;
    font-weight: bold; }
    @media screen and (max-width: 480px) {
      #news .news-detail__head .title {
        margin: 10px 0 0;
        clear: both;
        display: block; } }
#news .news-detail__content {
  line-height: 175%;
  margin: 0 0 30px; }
  #news .news-detail__content h2 {
    font-size: 1.8rem;
    margin: 0 0 10px; }
  #news .news-detail__content h3 {
    font-size: 1.6rem;
    margin: 0 0 10px; }
  #news .news-detail__content h4 {
    font-size: 1.6rem;
    margin: 0 0 10px; }
  #news .news-detail__content h5 {
    font-size: 1.5rem;
    margin: 0 0 10px; }
  #news .news-detail__content h6 {
    font-size: 1.5rem;
    margin: 0 0 10px; }
  #news .news-detail__content p {
    font-size: 1.4rem;
    margin: 0 0 10px; }
  #news .news-detail__content ul li {
    list-style-type: disc !important;
    margin: 0 0 0 20px; }
  #news .news-detail__content ol li {
    list-style-type: decimal !important;
    margin: 0 0 0 20px; }
  #news .news-detail__content img {
    max-width: 590px;
    height: auto;
    margin: 0 auto; }
#news .news-detail .bottom {
  text-align: center; }

#project2028 {
  /* 画面外にいる状態 */
  /* IE10〜11 */
  /* Edge12〜14 */
  /* 画面内に入った状態 */ }
  #project2028 .fadein {
    opacity: 0;
    transform: translate(0, 200px);
    transition: all 1000ms; }
    @media screen and (min-width: 769px) {
      #project2028 .fadein.project__right {
        transform: translate(200px, 0); }
      #project2028 .fadein.project__left {
        transform: translate(-200px, 0); } }
    @media screen and (max-width: 480px) {
      #project2028 .fadein {
        transform: translate(0, 100px); } }
  #project2028 _:-ms-input-placeholder, #project2028 :root .fadein {
    opacity: 1;
    transform: translate(0, 0); }
  @supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {
    #project2028 .fadein {
      opacity: 1;
      transform: translate(0, 0); } }
  #project2028 .fadein.scrollin {
    opacity: 1;
    transform: translate(0, 0); }
  #project2028 .kv {
    background-color: #555;
    background-image: url(../img/project2028/bg_kv.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 70px 0;
    text-align: center;
    height: 240px;
    box-sizing: border-box; }
    @media screen and (max-width: 480px) {
      #project2028 .kv {
        height: 290px;
        padding: 80px 0; } }
    #project2028 .kv .title {
      font-size: 4.0rem;
      font-style: italic;
      color: #fff;
      text-align: center;
      background-color: rgba(210, 202, 104, 0.56);
      position: relative;
      height: 100px;
      padding: 24px 0 0 0;
      box-sizing: border-box; }
      @media screen and (max-width: 480px) {
        #project2028 .kv .title {
          height: 130px;
          padding: 18px 0 0 0; } }
  #project2028 .description {
    background-color: #fff;
    padding: 40px 0; }
    @media screen and (max-width: 480px) {
      #project2028 .description {
        padding: 40px 50px; } }
    @media screen and (max-width: 480px) {
      #project2028 .description .inner {
        width: 100%; } }
    #project2028 .description p {
      font-size: 1.6rem;
      line-height: 150%;
      margin: 0 0 30px; }
      #project2028 .description p:last-of-type {
        margin: 0; }
  #project2028 .content {
    background-color: #555;
    background-image: url(../img/project2028/bg_content.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: content-box;
    padding: 50px 0 0 0;
    height: 1600px;
    /* IE10〜11 */
    /* Edge12〜14 */ }
    @media screen and (max-width: 480px) {
      #project2028 .content {
        height: auto;
        padding: 50px 0; } }
    #project2028 .content .inner {
      position: relative; }
    #project2028 .content .line {
      position: absolute;
      left: 50%;
      width: 3px;
      animation-name: line-extend;
      animation-duration: 5s; }
@keyframes line-extend {
  0% {
    height: 1px; }
  100% {
    height: 1400px; } }
      @media screen and (max-width: 480px) {
        @keyframes line-extend {
          0% {
            height: 1px; }
          100% {
            height: 95.6%; } } }
      @media screen and (max-width: 480px) {
        #project2028 .content .line {
          left: 40px; } }
    #project2028 .content _:-ms-input-placeholder, #project2028 .content :root .line {
      height: 1400px; }
    @supports (-ms-ime-align: auto) and (not (-webkit-text-stroke: initial)) {
      #project2028 .content .line {
        height: 1400px; } }
    #project2028 .content .block {
      position: relative;
      width: 513px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .block {
          width: calc( 100vw - 70px);
          margin: 0 0 30px; } }
      #project2028 .content .block .date {
        font-family: 'Tangerine', cursive;
        position: absolute;
        top: -15px;
        padding: 5px 10px;
        font-size: 6.0rem;
        color: #D2CA68; }
        @media screen and (max-width: 480px) {
          #project2028 .content .block .date {
            position: relative;
            top: -10px;
            padding: 0 10px; } }
        #project2028 .content .block .date span {
          transform: skewX(15deg); }
      #project2028 .content .block .title {
        position: absolute;
        top: 55px;
        font-size: 1.8rem;
        font-weight: bold;
        color: #fff;
        line-height: 150%; }
        @media screen and (max-width: 480px) {
          #project2028 .content .block .title {
            position: relative;
            top: -15px; } }
        #project2028 .content .block .title a {
          color: #fff;
          text-decoration: underline; }
          #project2028 .content .block .title a:after {
            font-family: "Font Awesome 5 Free";
            font-weight: bold;
            content: '\f0c1';
            display: inline-block;
            padding: 0 0 0 0.3em;
            font-size: 1.4rem; }
      #project2028 .content .block .text {
        position: absolute;
        font-size: 1.4rem;
        line-height: 150%;
        color: #fff;
        width: 420px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .block .text {
            position: relative;
            width: calc( 100vw - 110px); } }
      #project2028 .content .block .img {
        position: absolute; }
        @media screen and (max-width: 480px) {
          #project2028 .content .block .img {
            position: relative;
            top: 0; } }
    #project2028 .content .project__left {
      left: 0; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__left {
          left: 34px; } }
      #project2028 .content .project__left:before {
        position: absolute;
        top: 31px;
        right: -3px;
        content: "";
        background-color: #D2CA68;
        width: 370px;
        height: 1px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__left:before {
            left: 0px;
            width: 40px; } }
      #project2028 .content .project__left:after {
        position: absolute;
        top: 23px;
        right: -10px;
        content: "●";
        color: #D2CA68; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__left:after {
            left: 0px; } }
      #project2028 .content .project__left .date {
        left: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__left .date {
            left: 35px; } }
      #project2028 .content .project__left .title {
        left: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__left .title {
            left: 35px; } }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__left .text {
          left: 35px;
          margin: 0 0 10px; } }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__left .img {
          left: 35px;
          margin: 0 0 10px; } }
    #project2028 .content .project__right {
      left: 519px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__right {
          left: 34px; } }
      #project2028 .content .project__right:before {
        position: absolute;
        top: 31px;
        left: -3px;
        content: "";
        background-color: #D2CA68;
        width: 100px;
        height: 1px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__right:before {
            left: 0px;
            width: 40px; } }
      #project2028 .content .project__right:after {
        position: absolute;
        top: 23px;
        left: -10px;
        content: "●";
        color: #D2CA68; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__right:after {
            left: 0px; } }
      #project2028 .content .project__right .date {
        left: 100px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__right .date {
            left: 35px; } }
      #project2028 .content .project__right .title {
        left: 100px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__right .title {
            left: 35px; } }
      #project2028 .content .project__right .text {
        left: 100px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__right .text {
            left: 35px;
            margin: 0 0 10px; } }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__right .img {
          left: 35px;
          margin: 0 0 10px; } }
    #project2028 .content .project__center {
      text-align: center;
      width: 100%; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__center {
          width: 80vw;
          left: 34px;
          margin: 0 0 50px;
          text-align: left; } }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__center:before {
          position: absolute;
          content: "";
          background-color: #D2CA68;
          height: 1px;
          top: 8px;
          left: 0px;
          width: 40px; } }
      #project2028 .content .project__center:after {
        position: absolute;
        top: 0px;
        left: calc( 50% - 0.5rem );
        content: "●";
        color: #D2CA68; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__center:after {
            left: 0px; } }
    #project2028 .content .project__01 {
      top: 30px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__01 {
          top: 0px; } }
      #project2028 .content .project__01 .img {
        top: 90px;
        left: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__01 .img {
            top: 0;
            left: 35px; } }
        #project2028 .content .project__01 .img img {
          height: 100px;
          margin: 0 20px 0 0; }
          @media screen and (max-width: 480px) {
            #project2028 .content .project__01 .img img {
              height: 75px; } }
    #project2028 .content .project__02 {
      top: 80px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__02 {
          top: 0; } }
      #project2028 .content .project__02 .img {
        top: 20px;
        right: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__02 .img {
            top: 0;
            left: 35px; } }
        #project2028 .content .project__02 .img img {
          width: 244px;
          margin: 0; }
    #project2028 .content .project__03 {
      top: 262px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__03 {
          top: 0; } }
      #project2028 .content .project__03 .text {
        top: 90px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__03 .text {
            top: 0; } }
      #project2028 .content .project__03 .img {
        top: 164px;
        left: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__03 .img {
            top: 0;
            left: 35px; } }
        #project2028 .content .project__03 .img img {
          width: 420px; }
          @media screen and (max-width: 480px) {
            #project2028 .content .project__03 .img img {
              width: 70vw; } }
    #project2028 .content .project__04 {
      top: 315px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__04 {
          top: 0; } }
      #project2028 .content .project__04 .text {
        top: 90px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__04 .text {
            top: 0; } }
    #project2028 .content .project__05 {
      top: 520px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__05 {
          top: 0; } }
      #project2028 .content .project__05 .title {
        top: 17px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__05 .title {
            top: 0; } }
    #project2028 .content .project__06 {
      top: 580px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__06 {
          top: 0; } }
      #project2028 .content .project__06 .text {
        top: 90px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__06 .text {
            top: 0; } }
    #project2028 .content .project__07 {
      top: 730px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__07 {
          top: 0; } }
      #project2028 .content .project__07 .text {
        top: 90px;
        width: 220px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__07 .text {
            top: 0;
            width: auto; } }
      #project2028 .content .project__07 .img {
        top: 25px;
        right: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__07 .img {
            top: 0; } }
        #project2028 .content .project__07 .img img {
          width: 150px; }
    #project2028 .content .project__08 {
      top: 800px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__08 {
          top: 0; } }
      #project2028 .content .project__08 .text {
        top: 90px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__08 .text {
            top: 0; } }
      #project2028 .content .project__08 .img {
        top: 142px;
        left: 0;
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 420px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__08 .img {
            top: 0;
            left: 35px;
            width: 70vw;
            display: inline-block; } }
        #project2028 .content .project__08 .img img {
          margin: 0 0 10px; }
        #project2028 .content .project__08 .img img:nth-of-type(1),
        #project2028 .content .project__08 .img img:nth-of-type(2) {
          height: 106px; }
          @media screen and (max-width: 480px) {
            #project2028 .content .project__08 .img img:nth-of-type(1),
            #project2028 .content .project__08 .img img:nth-of-type(2) {
              width: 100%;
              height: auto; } }
        #project2028 .content .project__08 .img img:nth-of-type(3),
        #project2028 .content .project__08 .img img:nth-of-type(4) {
          height: 136px; }
          @media screen and (max-width: 480px) {
            #project2028 .content .project__08 .img img:nth-of-type(3),
            #project2028 .content .project__08 .img img:nth-of-type(4) {
              width: 100%;
              height: auto; } }
        #project2028 .content .project__08 .img img:nth-of-type(5),
        #project2028 .content .project__08 .img img:nth-of-type(6) {
          height: 136px; }
          @media screen and (max-width: 480px) {
            #project2028 .content .project__08 .img img:nth-of-type(5),
            #project2028 .content .project__08 .img img:nth-of-type(6) {
              width: 100%;
              height: auto; } }
    #project2028 .content .project__09 {
      top: 980px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__09 {
          top: 0;
          margin-bottom: 100px; } }
      #project2028 .content .project__09 .text {
        top: 90px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__09 .text {
            top: 0; } }
    #project2028 .content .project__10 {
      top: 1395px; }
      @media screen and (max-width: 480px) {
        #project2028 .content .project__10 {
          top: 0; } }
      #project2028 .content .project__10 .date {
        width: 100%;
        font-size: 6.0rem;
        top: 0; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__10 .date {
            top: -37px;
            left: 35px;
            width: 70vw; } }
      #project2028 .content .project__10 .title {
        font-family: 'Noto Serif JP', serif;
        font-style: italic;
        width: 100%;
        font-size: 3.4rem;
        color: #D2CA68;
        top: 70px; }
        @media screen and (max-width: 480px) {
          #project2028 .content .project__10 .title {
            top: -40px;
            left: 35px;
            width: 70vw;
            font-size: 3.0rem; } }

.btn {
  display: inline-block; }
  .btn__info {
    width: 125px;
    font-size: 1.4rem;
    padding: 5px 0;
    border: 1px solid #707070;
    background-color: #fff;
    color: #707070;
    border-radius: 5px;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .btn__info {
        width: 220px;
        margin: 0 auto;
        padding: 18px 0;
        font-size: 1.8rem; } }
  .btn__more {
    width: 145px;
    font-size: 1.4rem;
    margin: 0 auto;
    padding: 12px 0;
    border: 1px solid #707070;
    background-color: #fff;
    color: #707070;
    position: relative; }
    .btn__more::after {
      font-family: "Font Awesome 5 Free";
      content: '\f0da';
      font-weight: bold;
      position: absolute;
      right: 10px; }
  .btn__next {
    width: 145px;
    font-size: 1.4rem;
    margin: 0 auto;
    padding: 12px 0;
    border: 1px solid #707070;
    background-color: #fff;
    color: #707070;
    position: relative;
    text-align: center; }
    .btn__next::after {
      font-family: "Font Awesome 5 Free";
      content: '\f0da';
      font-weight: bold;
      position: absolute;
      right: 10px; }
  .btn__prev {
    width: 145px;
    font-size: 1.4rem;
    margin: 0 auto;
    padding: 12px 0;
    border: 1px solid #707070;
    background-color: #fff;
    color: #707070;
    position: relative;
    text-align: center; }
    .btn__prev::after {
      font-family: "Font Awesome 5 Free";
      content: '\f0d9';
      font-weight: bold;
      position: absolute;
      left: 10px; }
  .btn__tools-link {
    font-size: 1.4rem;
    margin: 0 auto;
    padding: 10px 20px;
    background-color: #fff;
    position: relative;
    font-weight: bold; }
    .btn__tools-link::after {
      font-family: "Font Awesome 5 Free";
      content: '\f0da';
      font-weight: bold;
      position: absolute;
      right: 10px; }
    .btn__tools-link.cat1 {
      border: 1px solid #D61200;
      color: #D61200; }
    .btn__tools-link.cat2 {
      border: 1px solid #1E5ED8;
      color: #1E5ED8; }
  .btn__download {
    margin: 0 auto;
    padding: 25px 100px;
    color: #fff !important;
    border-radius: 50px;
    background-image: url(../img/common/pdf.svg);
    background-repeat: no-repeat;
    background-position: 50px 29px;
    background-size: 32px 39px;
    text-align: center; }
    @media screen and (max-width: 480px) {
      .btn__download {
        width: calc(70vw);
        margin: 0 auto 10px;
        padding: 55px 10px 10px 10px;
        border-radius: 20px;
        background-position: center 10px;
        background-size: 30px 39px; } }
    .btn__download .note {
      font-size: 1.5rem;
      display: inline-block;
      margin-bottom: 5px; }
      @media screen and (max-width: 480px) {
        .btn__download .note {
          font-size: 1.2rem; } }
    .btn__download .title {
      font-size: 2.1rem;
      display: inline-block; }
      @media screen and (max-width: 480px) {
        .btn__download .title {
          font-size: 2.0rem;
          font-weight: bold; } }
    .btn__download.cat1 {
      background-color: #D61200;
      padding: 25px 70px 25px 100px;
      margin: 0 20px; }
      @media screen and (max-width: 480px) {
        .btn__download.cat1 {
          padding: 55px 10px 10px 10px; } }
    .btn__download.cat2 {
      background-color: #1E5ED8;
      padding: 25px 60px 25px 100px;
      margin: 0 20px; }
      @media screen and (max-width: 480px) {
        .btn__download.cat2 {
          padding: 55px 10px 10px 10px; } }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../img/common/loader.gif") center center no-repeat; }

/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent; }

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1; }

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: .25; }

.slick-prev:before,
.slick-next:before {
  font-family: 'slick';
  font-size: 20px;
  line-height: 1;
  opacity: .75;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }

[dir='rtl'] .slick-prev {
  right: -25px;
  left: auto; }

.slick-prev:before {
  content: '←'; }

[dir='rtl'] .slick-prev:before {
  content: '→'; }

.slick-next {
  right: -25px; }

[dir='rtl'] .slick-next {
  right: auto;
  left: -25px; }

.slick-next:before {
  content: '→'; }

[dir='rtl'] .slick-next:before {
  content: '←'; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  top: 440px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center; }

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer; }

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent; }

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none; }

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1; }

.slick-dots li button:before {
  font-family: 'slick';
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '○';
  text-align: center;
  opacity: 1;
  color: #fff;
  font-size: 1.0rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button:before {
  content: '●';
  opacity: 1;
  color: #fff; }

/*----------------------------------------------------
	印刷用スタイル
----------------------------------------------------*/
@media print {
  * html body {
    zoom: .7; } }
