@charset "UTF-8";
@import url("//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("//fonts.googleapis.com/css2?family=Antonio:wght@100;200;300;400;500;600;700&display=swap");
@import url("//code.ionicframework.com/ionicons/2.0.0/css/ionicons.min.css");
@import url("//use.fontawesome.com/releases/v5.0.6/css/all.css");
/*-----------------------------------

safeguarding.scss

------------------------------------*/
/*====================　leaguecupfinal2020　から移植↓　============================*/
a {
  color: #e60012;
  text-decoration: none;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

a:hover {
  opacity: 0.4;
  text-decoration: none; }

html {
  font-size: 62.5%;
  overflow-y: auto; }

body {
  min-width: 980px;
  background: f5f3f3;
  font-size: 1.6rem;
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #000;
  line-height: 1.75;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  body.is-nav {
    height: 100%;
    overflow: hidden; }

#header *,
.CNT * {
  box-sizing: border-box; }

img {
  vertical-align: bottom; }

strong {
  font-weight: bold; }

#pagetop {
  width: 100%; }

.CNT {
  font-feature-settings: 'palt'; }

/* ==========================================================================
   COMMON
========================================================================== */
.CLM__half, .CLM__three, .CLM__four {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: -ms- left;
  justify-content: -webkit- left;
  justify-content: left;
  align-items: -ms- top;
  align-items: -webkit- top;
  align-items: top; }
  .CLM__half img, .CLM__three img, .CLM__four img {
    width: 100%; }
  .CLM__half .wide100, .CLM__three .wide100, .CLM__four .wide100 {
    width: 100% !important; }
.CLM__half > li, .CLM__half > article, .CLM__half > figure {
  width: 48%;
  margin-right: 4%; }
  .CLM__half > li:nth-child(2n), .CLM__half > article:nth-child(2n), .CLM__half > figure:nth-child(2n) {
    margin-right: 0; }
.CLM__three > li, .CLM__three > article, .CLM__three > figure {
  width: 32%;
  margin-right: 2%; }
  .CLM__three > li:nth-child(3n), .CLM__three > article:nth-child(3n), .CLM__three > figure:nth-child(3n) {
    margin-right: 0; }
.CLM__four > li, .CLM__four > article {
  width: 23.5%;
  margin-right: 2%; }
  .CLM__four > li:nth-child(4n), .CLM__four > article:nth-child(4n) {
    margin-right: 0; }

.nowrapCLM {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: nowrap;
  justify-content: -ms- space-between;
  justify-content: -webkit- space-between;
  justify-content: space-between;
  align-items: -ms- top;
  align-items: -webkit- top;
  align-items: top; }
  .nowrapCLM > li,
  .nowrapCLM > article {
    flex: 1;
    margin-right: 3%; }
    .nowrapCLM > li:last-child,
    .nowrapCLM > article:last-child {
      margin-right: 0; }
    .nowrapCLM > li img,
    .nowrapCLM > article img {
      width: 100%; }
    .nowrapCLM > li a,
    .nowrapCLM > article a {
      display: block; }

.txt__honbun {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.65;
  margin-bottom: 1em; }
.txt__size16 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  margin-bottom: 1em; }
.txt__size18 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 1em;
  font-weight: bold; }
.txt__size20 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 1em;
  font-weight: bold; }
.txt__size22 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 2;
  margin-bottom: 1em;
  font-weight: bold; }
.txt__size26 {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 2;
  margin-bottom: 1em;
  font-weight: bold; }
.txt__red {
  color: #e60012; }
.txt__green {
  color: #259841; }
.txt__bold {
  font-weight: bold !important; }
.txt__normal {
  font-weight: normal !important; }
.txt__left {
  text-align: left; }
.txt__right {
  text-align: right; }
.txt__center {
  text-align: center; }

.textlink__right {
  text-align: right; }
  .textlink__right a {
    color: #000; }
.textlink__down:after {
  display: inline-block;
  font-family: 'ionicons';
  content: '\f104';
  font-size: 150%;
  position: relative;
  top: 2px;
  margin-left: 5px;
  margin-top: 10px; }

.list__style {
  padding-left: 1em; }
  .list__style__disc {
    list-style: disc;
    text-align: left; }
    .list__style__disc li {
      margin-left: 1em;
      font-size: 20px;
      font-size: 2rem; }
  .list__style__decimal {
    list-style: decimal;
    text-align: left; }

.arrow__Underlink {
  position: relative;
  color: #000; }
  .arrow__Underlink:after {
    display: block;
    font-family: 'ionicons';
    content: '\f104';
    font-size: 150%;
    position: relative;
    top: -10px;
    height: 1em; }

.btn {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  font-weight: bold;
  box-sizing: border-box;
  padding-right: 0;
  width: 660px;
  background: #000;
  color: #fff;
  margin: auto;
  padding: 30px;
  display: block;
  text-align: center;
  position: relative;
  border-radius: 50px; }
  .btn:after {
    font-size: 20px;
    font-size: 2rem;
    right: 10%;
    transition: 0.3s ease-in-out;
    position: absolute;
    content: "\f125";
    font-family: ionicons;
    font-weight: normal;
    right: 30px;
    top: 50%;
    color: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
  .btn__more {
    transition: 0.3s ease-in-out;
    border: none;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 20px;
    margin: 30px auto; }
    .btn__more:after {
      content: "\f35d";
      font-size: 20px;
      font-size: 2rem; }
  .btn.icon__pdf:before {
    font-size: 30px;
    font-size: 3rem;
    transition: 0.3s ease-in-out;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    content: "\f1c1";
    font-weight: normal;
    left: 30px;
    top: 50%;
    color: #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }

.commonTable {
  border: 1px solid #CCC;
  background: #FFF; }
  .commonTable tbody th, .commonTable tbody td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: .75em 2em;
    text-align: center;
    line-height: 1.5; }
  .commonTable tbody td {
    text-align: left; }

.sec {
  text-align: center; }
  .sec__inner900 {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 80px 5vw; }
  .sec__inner980 {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 80px 5vw; }
  .sec__inner1100 {
    width: 100%;
    min-width: 980px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 80px 5vw; }
  .sec__inner1200 {
    width: 100%;
    min-width: 980px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 5vw; }
  .sec__innerWide {
    width: 100%;
    min-width: 980px;
    max-width: 1500px;
    margin: 0 auto;
    padding: 80px 5vw; }
  .sec__lightgray {
    background: url(/img/special/safeguarding/BG_lightgray.jpg) repeat-y top center;
    background-size: 100% auto; }
  .sec__white {
    background: #fff; }
  .sec__inner__gray {
    margin: 450px auto 60px; }
    .sec__inner__gray:before {
      top: -200px;
      padding-bottom: 0; }
    .sec__inner__gray.left:before {
      width: 90%;
      left: 10%; }

.heading__main {
  position: relative;
  margin-bottom: 40px; }
  .heading__main .jpn_S {
    font-size: 26px;
    font-size: 2.6rem;
    display: block;
    text-align: center;
    font-weight: 900;
    padding: 10px 0 30px 0;
    line-height: 1.3; }
  .heading__main .eng_L {
    font-size: 25px;
    font-size: 2.5rem;
    text-align: center;
    font-family: "Antonio", sans-serif;
    color: #259841;
    font-weight: bold;
    display: block; }
  .heading__main:after {
    content: "";
    width: 50px;
    height: 4px;
    background: #259841;
    position: absolute;
    left: 50%;
    transform: translateX(-50%); }
.heading__sub {
  font-size: 40px;
  font-size: 4rem;
  padding: 10px 50px; }
.heading__S {
  font-size: 50px;
  font-size: 5rem; }
.heading__left {
  text-align: left; }

.kome {
  display: block; }

body:before {
  content: "";
  display: block;
  position: fixed;
  width: 35%;
  height: 100%;
  background: url(/img/special/safeguarding/logo_jleague_ll.svg);
  z-index: -1;
  top: 0;
  right: -50px;
  background-repeat: no-repeat;
  opacity: 0.2; }

/* ==========================================================================
   header
========================================================================== */
#header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 0 15px;
  height: 70px;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: nowrap;
  justify-content: -ms- space-between;
  justify-content: -webkit- space-between;
  justify-content: space-between;
  align-items: -ms- center;
  align-items: -webkit- center;
  align-items: center;
  background: #fff;
  z-index: 500;
  box-sizing: border-box;
  transition: all 1s;
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.3); }
  #header .header__left {
    width: 35%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: nowrap;
    justify-content: -ms- left;
    justify-content: -webkit- left;
    justify-content: left;
    align-items: -ms- center;
    align-items: -webkit- center;
    align-items: center; }
    #header .header__left__jleaguejp {
      margin-right: 10px; }
      #header .header__left__jleaguejp img {
        width: auto;
        height: 40px; }
    #header .header__left__toto {
      margin-left: 10px; }
      #header .header__left__toto img {
        width: auto;
        height: 50px; }
    #header .header__left__logo {
      text-align: left; }
      #header .header__left__logo img {
        height: 25px; }
  #header .header__right {
    width: 65%;
    text-align: right; }
    #header .header__right__nav {
      height: 40px;
      line-height: 44px;
      font-size: 12px;
      font-size: 1.2rem;
      float: right; }
      #header .header__right__nav .navList {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-wrap: nowrap;
        justify-content: -ms- left;
        justify-content: -webkit- left;
        justify-content: left;
        align-items: -ms- center;
        align-items: -webkit- center;
        align-items: center;
        position: relative;
        height: 40px; }
        #header .header__right__nav .navList li {
          height: 40px;
          position: relative;
          padding: 0 3px; }
          #header .header__right__nav .navList li a, #header .header__right__nav .navList li span {
            color: #000;
            line-height: 40px;
            padding: 0 7px;
            display: block;
            font-weight: bold; }
            #header .header__right__nav .navList li a:hover, #header .header__right__nav .navList li span:hover {
              opacity: 1; }
              #header .header__right__nav .navList li a:hover:after, #header .header__right__nav .navList li span:hover:after {
                content: '';
                background: #259841;
                position: absolute;
                bottom: -15px;
                width: 100%;
                height: 4px;
                left: 0;
                transition: 0.3s ease-in-out; }
          #header .header__right__nav .navList li span {
            opacity: 0.3; }
          #header .header__right__nav .navList li.nolink a {
            pointer-events: none;
            opacity: 0.6; }
          #header .header__right__nav .navList li:nth-child(2) {
            position: relative; }
            #header .header__right__nav .navList li:nth-child(2):before {
              content: "NEW";
              color: #259841;
              font-size: 100%;
              position: absolute;
              font-weight: bold;
              left: 10px;
              top: -20px; }
  #header.is-in {
    background: rgba(0, 0, 0, 0.85); }

#navigation {
  display: none; }

body.safeguardingTOP #header .header__right__nav .navList li.top a:after,
body.safeguardingWORKSHOP #header .header__right__nav .navList li.workshop a:after,
body.safeguardingCHECK #header .header__right__nav .navList li.checklist a:after,
body.safeguardingJ #header .header__right__nav .navList li.torikumijleague a:after,
body.safeguardingCLUB #header .header__right__nav .navList li.torikumiclub a:after,
body.safeguardingFIFA #header .header__right__nav .navList li.torikumififa a:after {
  content: "";
  background: #259841;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  width: calc(100% - 10px);
  height: 4px;
  transition: 0.3s ease-in-out; }

#underlineNav {
  position: relative; }
  #underlineNav__line {
    position: absolute;
    bottom: -15px;
    height: 3px;
    background-color: #259841;
    transition: all .3s ease; }

/* ==========================================================================
   kvArea
========================================================================== */
.kvArea {
  margin-top: 70px;
  background: url(/img/special/safeguarding/kv_bg.jpg) no-repeat top center;
  background-size: cover;
  height: 550px; }
  .kvArea__img {
    opacity: 0;
    animation: title 2s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
    animation-delay: 1.5s;
    height: 100%;
    width: auto;
    text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: center;
    justify-content: -ms- center;
    justify-content: -webkit- center;
    justify-content: center;
    align-items: -ms- center;
    align-items: -webkit- center;
    align-items: center; }

@keyframes title {
  0% {
    transform: translateY(30px);
    opacity: 0; }
  80% {
    opacity: 1; }
  100% {
    opacity: 1;
    transform: translateY(0); } }
.subkvArea {
  margin-top: 70px;
  position: relative;
  min-height: 270px;
  background: url(/img/special/safeguarding/sub_bg.jpg) no-repeat top center;
  background-size: cover;
  position: relative;
  display: none; }
  .subkvArea__title {
    opacity: 0;
    animation: title 2s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
    animation-delay: 1s;
    height: 100%;
    width: auto;
    text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: center;
    justify-content: -ms- center;
    justify-content: -webkit- center;
    justify-content: center;
    align-items: -ms- center;
    align-items: -webkit- center;
    align-items: center;
    padding-top: 70px; }
    .subkvArea__title .eng_L {
      color: #fff;
      font-weight: 900;
      font-family: "Antonio", sans-serif;
      display: block;
      font-size: 80px;
      font-size: 8rem;
      margin: 0 auto;
      display: block;
      line-height: 1;
      text-align: center; }
    .subkvArea__title .jpn_S {
      color: #fff;
      font-weight: 900;
      font-size: 20px;
      font-size: 2rem;
      text-align: center;
      display: block;
      letter-spacing: 10px;
      margin-top: 10px;
      text-align: center; }

body.safeguardingCHECK .subkvArea.checklist,
body.safeguardingJ .subkvArea.torikumijleague,
body.safeguardingCLUB .subkvArea.torikumiclub,
body.safeguardingFIFA .subkvArea.torikumififa,
body.safeguardingWORKSHOP .subkvArea.workshop {
  display: block; }

/* ==========================================================================
   navArea
========================================================================== */
.navArea {
  background: #259841; }
  .navArea .nav__wrap {
    width: 980px;
    margin: 0 auto;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: -ms- left;
    justify-content: -webkit- left;
    justify-content: left;
    align-items: -ms- top;
    align-items: -webkit- top;
    align-items: top; }
    .navArea .nav__wrap li {
      width: calc((100% - 14px) / 6);
      border-right: 2px solid #1E7A35; }
      .navArea .nav__wrap li:nth-child(1) {
        border-left: 2px solid #1E7A35; }
      body.safeguardingTOP .navArea .nav__wrap li.safeguarding a {
        background: #1E7A35; }
      body.safeguardingWORKSHOP .navArea .nav__wrap li.workshop a {
        background: #1E7A35; }
      body.safeguardingCHECK .navArea .nav__wrap li.checklist a {
        background: #1E7A35; }
      body.safeguardingJ .navArea .nav__wrap li.torikumijleague a {
        background: #1E7A35; }
      body.safeguardingCLUB .navArea .nav__wrap li.torikumiclub a {
        background: #1E7A35; }
      body.safeguardingFIFA .navArea .nav__wrap li.torikumififa a {
        background: #1E7A35; }
      .navArea .nav__wrap li a {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
        justify-content: -ms- center;
        justify-content: -webkit- center;
        justify-content: center;
        align-items: -ms- center;
        align-items: -webkit- center;
        align-items: center;
        color: #fff;
        font-weight: 900;
        text-align: center;
        line-height: 1.2;
        font-size: 14px;
        font-size: 1.4rem;
        height: 70px; }
        .navArea .nav__wrap li a span {
          font-weight: bold; }
        .navArea .nav__wrap li a:hover {
          background: #1E7A35;
          opacity: 1; }
      .navArea .nav__wrap li:nth-child(2) {
        position: relative; }
        .navArea .nav__wrap li:nth-child(2):before {
          content: "NEW";
          color: #FFEB3B;
          font-size: 100%;
          position: absolute;
          font-weight: bold;
          left: 15px; }

/* ==========================================================================
   declarationArea
========================================================================== */
.declarationArea .declaration__title {
  margin-bottom: 40px; }
  .declarationArea .declaration__title img {
    width: 500px;
    margin: 0 auto;
    display: block;
    margin-bottom: 5px; }
  .declarationArea .declaration__title p {
    text-align: center;
    font-weight: 900;
    font-size: 40px;
    font-size: 4rem;
    line-height: 1; }
.declarationArea .declaration__youtube {
  width: 700px;
  aspect-ratio: 16 / 9;
  margin: 0 auto; }
  .declarationArea .declaration__youtube iframe {
    width: 100%;
    height: 100%; }
  .declarationArea .declaration__youtube video {
    width: 100%;
    height: 100%; }

/* ==========================================================================
   policyArea
========================================================================== */
.policyArea {
  background: url(/img/special/safeguarding/policy_bg.jpg);
  background-size: cover;
  background-position: bottom; }
  .policyArea .policy__wrap {
    box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.3);
    padding: 40px;
    background: rgba(255, 255, 255, 0.8);
    background-position: bottom; }
  .policyArea .policy__txt {
    text-align: center;
    line-height: 2; }

/* ==========================================================================
   leadArea
========================================================================== */
.leadArea {
  background: #fff; }
  .leadArea .lead__wrap {
    align-items: center;
    justify-content: center; }
    .leadArea .lead__wrap--left {
      width: 45%; }
    .leadArea .lead__wrap--right {
      width: 35%; }
    .leadArea .lead__wrap img {
      width: 100%; }
  .leadArea .lead__title {
    margin-bottom: 30px; }
    .leadArea .lead__title span {
      background: #259841;
      color: #fff;
      font-weight: 900;
      display: inline-block;
      font-size: 30px;
      font-size: 3rem;
      padding: 0 20px; }
      .leadArea .lead__title span + span {
        margin-top: 10px; }
  .leadArea .lead__txt {
    line-height: 2; }

/* ==========================================================================
   definitionArea
========================================================================== */
.definitionArea {
  background: rgba(219, 230, 222, 0.3); }
  .definitionArea .definition__lead {
    text-align: center;
    margin-bottom: 40px; }
  .definitionArea .definition__wrap--con {
    padding: 40px; }
  .definitionArea .definition__wrap--right, .definitionArea .definition__wrap--left {
    background: #fff;
    border-radius: 5px;
    overflow: hidden; }
  .definitionArea .definition__wrap--title {
    font-size: 20px;
    font-size: 2rem;
    background: #000;
    color: #fff;
    font-weight: 900;
    text-align: center;
    padding: 15px; }
  .definitionArea .definition__wrap--subtitle {
    border-bottom: 2px solid #000;
    padding-bottom: 5px;
    font-weight: bold;
    margin-bottom: 20px; }
  .definitionArea .definition__wrap--txt {
    margin-bottom: 20px; }
  .definitionArea .definition__wrap--list li {
    font-size: 16px;
    font-size: 1.6rem;
    background: #E3E3E3;
    padding: 10px;
    padding-left: calc(10px + 1.6em);
    position: relative;
    padding-right: 15px; }
    .definitionArea .definition__wrap--list li + li {
      margin-top: 10px; }
    .definitionArea .definition__wrap--list li:after {
      content: '';
      position: absolute;
      background: #259841;
      width: 15px;
      height: 15px;
      border-radius: 50%;
      left: 15px;
      top: 17px; }

/* ==========================================================================
   abuseArea
========================================================================== */
.abuseArea .bg__white {
  background: #fff;
  position: relative; }
  .abuseArea .bg__white .sec__inner980 {
    padding-bottom: 60px; }
  .abuseArea .bg__white:after {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    top: 100%;
    border: 105px solid transparent;
    width: 0;
    height: 0;
    border-top: 65px solid #fff; }
.abuseArea .bg__gray {
  background: #E3E3E3; }
  .abuseArea .bg__gray .sec__inner980 {
    padding-top: 100px; }
.abuseArea .abuse__title {
  margin-bottom: 10px;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: 900;
  text-align: center; }
.abuseArea .abuse__subtitle {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  border-bottom: 2px solid #000;
  padding-bottom: 10px;
  margin-bottom: 40px; }
.abuseArea .abuse__lead {
  text-align: center;
  line-height: 2; }
.abuseArea .abuse__wrap {
  margin-bottom: 60px; }
.abuseArea .abuse__con {
  border-radius: 5px;
  overflow: hidden;
  background: #606060;
  position: relative;
  margin-right: 20px;
  width: calc((100% - 40px) / 3);
  margin-bottom: 20px; }
  .abuseArea .abuse__con:nth-child(3n) {
    margin-right: 0; }
  .abuseArea .abuse__con--img {
    background: #fff; }
    .abuseArea .abuse__con--img img {
      width: 80%;
      margin: 0 auto;
      display: block;
      padding-top: 20px; }
  .abuseArea .abuse__con--title {
    background: #e60012;
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    font-weight: 900;
    padding: 10px;
    line-height: 1; }
  .abuseArea .abuse__con figcaption {
    padding: 30px;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem; }
.abuseArea .abuse__list {
  padding: 0 40px; }
  .abuseArea .abuse__list--item {
    padding-left: 1.5em;
    position: relative;
    line-height: 1.2; }
    .abuseArea .abuse__list--item + .abuse__list--item {
      margin-top: 25px; }
    .abuseArea .abuse__list--item:after {
      content: "";
      position: absolute;
      background: #000;
      width: 15px;
      height: 15px;
      left: 0;
      top: 2px; }
    .abuseArea .abuse__list--item p {
      font-weight: 500; }
    .abuseArea .abuse__list--item span {
      font-size: 12px;
      font-size: 1.2rem; }

/* ==========================================================================
   checklistArea
========================================================================== */
.checklistArea .checklist__lead {
  color: #259841;
  text-align: center;
  line-height: 2;
  font-size: 23px;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 60px; }
.checklistArea .checklist__ankr {
  background: #fff;
  border-radius: 35px;
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.3);
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: nowrap;
  justify-content: -ms- center;
  justify-content: -webkit- center;
  justify-content: center;
  align-items: -ms- center;
  align-items: -webkit- center;
  align-items: center;
  margin-bottom: 60px; }
  .checklistArea .checklist__ankr li {
    width: 20%;
    border-right: 2px solid #E3E3E3; }
    .checklistArea .checklist__ankr li:nth-child(1) {
      border-left: 2px solid #E3E3E3; }
    .checklistArea .checklist__ankr li a {
      color: #000;
      width: 100%;
      height: 60px;
      padding-bottom: 10px;
      text-align: center;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      flex-wrap: nowrap;
      justify-content: -ms- center;
      justify-content: -webkit- center;
      justify-content: center;
      align-items: -ms- center;
      align-items: -webkit- center;
      align-items: center;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      position: relative; }
      .checklistArea .checklist__ankr li a:after {
        display: inline-block;
        font-family: 'ionicons';
        content: "\f123";
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: 5px; }
.checklistArea .checklist__wrap {
  background: #fff;
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  overflow: hidden; }
  .checklistArea .checklist__wrap--title {
    background: #606060;
    color: #fff;
    font-weight: 900;
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 3px;
    padding: 10px; }
  .checklistArea .checklist__wrap--con {
    padding: 40px; }
  .checklistArea .checklist__wrap--list li {
    padding-left: 1.5em;
    position: relative;
    line-height: 1.2; }
    .checklistArea .checklist__wrap--list li + li {
      margin-top: 10px; }
    .checklistArea .checklist__wrap--list li:after {
      content: "";
      position: absolute;
      width: 15px;
      height: 15px;
      left: 0;
      top: 2px;
      border: 1px solid black; }
.checklistArea .leaderArea, .checklistArea .guardianArea, .checklistArea .playerArea {
  padding-top: 60px;
  margin-top: -60px; }

/* ==========================================================================
   clubjleagueArea fifaArea
========================================================================== */
body.safeguardingJ .jleagueleadArea,
body.safeguardingCLUB .clubjleaguepolicyArea {
  background: rgba(255, 255, 255, 0.5); }

.clubjleaguelead__title {
  text-align: center;
  margin-bottom: 60px; }
  .clubjleaguelead__title img {
    width: 120px;
    display: block;
    margin: 0 auto;
    margin-bottom: 10px; }
  .clubjleaguelead__title p {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 900;
    border-bottom: 2px solid;
    display: inline-block;
    padding: 0 20px 10px; }
.clubjleaguelead__list {
  width: 800px;
  margin: 0 auto; }
  .clubjleaguelead__list li {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: -ms- center;
    justify-content: -webkit- center;
    justify-content: center;
    align-items: -ms- flex-start;
    align-items: -webkit- flex-start;
    align-items: flex-start; }
    .clubjleaguelead__list li + li {
      margin-top: 40px; }
    .clubjleaguelead__list li > span {
      background: #000;
      width: 40px;
      height: 40px;
      font-weight: 500;
      color: #fff;
      line-height: 40px;
      text-align: center;
      font-size: 20px;
      font-size: 2rem;
      margin-right: 20px; }
    .clubjleaguelead__list li p {
      font-weight: 500;
      font-size: 20px;
      font-size: 2rem;
      width: calc(100% - 60px); }
      .clubjleaguelead__list li p span {
        font-weight: 900; }

.clubjleaguepointArea {
  background: url(/img/special/safeguarding/BG_lightgray_sankaku.png) repeat-y top center;
  background-size: 100% auto;
  background-position: top;
  padding-top: 100px; }
  body.safeguardingCLUB .clubjleaguepointArea {
    background-color: rgba(255, 255, 255, 0.5); }

.clubjleaguepoint__title {
  text-align: center;
  font-weight: 900;
  font-size: 26px;
  font-size: 2.6rem;
  margin-bottom: 40px; }
  .clubjleaguepoint__title span {
    color: #259841;
    font-weight: 900;
    border-bottom: 2px solid #259841;
    padding-bottom: 5px;
    font-size: 26px;
    font-size: 2.6rem; }
.clubjleaguepoint__list {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: -ms- center;
  justify-content: -webkit- center;
  justify-content: center;
  align-items: -ms- center;
  align-items: -webkit- center;
  align-items: center;
  width: 660px;
  margin: 0 auto; }
  .clubjleaguepoint__list + .btn {
    margin-top: 50px; }
  .clubjleaguepoint__list li {
    background: #259841;
    border-radius: 50%;
    color: #fff;
    font-weight: 900;
    text-align: center;
    margin-right: 20px;
    width: 200px;
    height: 200px;
    font-size: 16px;
    font-size: 1.6rem;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: -ms- center;
    justify-content: -webkit- center;
    justify-content: center;
    align-items: -ms- center;
    align-items: -webkit- center;
    align-items: center; }
    .clubjleaguepoint__list li:nth-child(3) {
      padding-right: 0; }

.clubjleaguepolicyArea {
  background: rgba(219, 230, 222, 0.5); }

.clubjleaguepolicy__wrap {
  background: #fff;
  box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  overflow: hidden; }
  .clubjleaguepolicy__wrap + .clubjleaguepolicy__wrap {
    margin-top: 30px; }
  .clubjleaguepolicy__wrap--title {
    font-size: 20px;
    font-size: 2rem;
    background: #000;
    color: #fff;
    font-weight: 900;
    text-align: center;
    padding: 15px; }
  .clubjleaguepolicy__wrap--con {
    padding: 40px; }
    .clubjleaguepolicy__wrap--con ul li {
      padding-left: 1.5em;
      position: relative; }
      .clubjleaguepolicy__wrap--con ul li + li {
        margin-top: 20px; }
      .clubjleaguepolicy__wrap--con ul li:after {
        content: "";
        position: absolute;
        background: #259841;
        width: 15px;
        height: 15px;
        border-radius: 50%;
        left: 0;
        top: 7px; }
.clubjleaguepolicy__img {
  width: 400px;
  margin: 0 auto;
  margin-top: 60px; }
  .clubjleaguepolicy__img img {
    width: 100%; }

.clubjleaguemodel__img img {
  width: 100%; }

.clubjleagueproject__lead {
  text-align: center;
  margin-bottom: 40px; }
.clubjleagueproject__ttlimg {
  width: 150px;
  margin: 0 auto 20px; }
.clubjleagueproject__list li {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: -ms- left;
  justify-content: -webkit- left;
  justify-content: left;
  align-items: -ms- top;
  align-items: -webkit- top;
  align-items: top;
  border-radius: 5px;
  overflow: hidden; }
  .clubjleagueproject__list li + li {
    margin-top: 10px; }
  .clubjleagueproject__list li .title {
    width: 30%;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: -ms- left;
    justify-content: -webkit- left;
    justify-content: left;
    align-items: -ms- top;
    align-items: -webkit- top;
    align-items: top;
    background: #259841;
    padding: 20px;
    color: #fff; }
    .clubjleagueproject__list li .title span {
      background: #fff;
      color: #259841;
      width: 35px;
      height: 35px;
      text-align: center;
      line-height: 35px;
      font-weight: 900;
      border-radius: 50%;
      margin-right: 10px; }
    .clubjleagueproject__list li .title p {
      width: calc(100% - 45px);
      font-weight: 900; }
  .clubjleagueproject__list li > p {
    width: 70%;
    box-sizing: border-box;
    background: #DBE6DE;
    padding: 20px; }

.fifaArea .fifa__wrap {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: -ms- center;
  justify-content: -webkit- center;
  justify-content: center;
  align-items: -ms- center;
  align-items: -webkit- center;
  align-items: center; }
  .fifaArea .fifa__wrap + .heading__main {
    margin-top: 80px;
    border-top: 1px solid #a9a9a9;
    padding-top: 80px; }
  .fifaArea .fifa__wrap li {
    width: calc((100% - 40px) / 2);
    text-align: center; }
    .fifaArea .fifa__wrap li:nth-child(2) {
      margin-left: 40px; }
    .fifaArea .fifa__wrap li img {
      width: 300px;
      margin-bottom: 10px; }
    .fifaArea .fifa__wrap li .title {
      text-align: center;
      font-weight: bold;
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 20px; }
    .fifaArea .fifa__wrap li .btn {
      width: 80%;
      padding: 20px;
      font-size: 16px;
      font-size: 1.6rem; }

/* ==========================================================================
   workshop
========================================================================== */
.workshop .jpn_S {
  font-size: 2.6rem;
  display: block;
  text-align: center;
  font-weight: 900;
  padding: 10px 0 30px 0;
  line-height: 1.3; }
.workshop__lead {
  margin-bottom: 40px; }
.workshop__inner {
  background-color: #fff;
  padding: 50px;
  border-radius: 10px;
  margin-bottom: 40px; }
  .workshop__inner ul {
    padding-left: 20px;
    list-style: disc;
    margin-bottom: 40px; }
.workshop_img {
  display: flex;
  align-items: center;
  width: 660px;
  margin: 0 auto 40px; }
  .workshop_img_inner {
    width: calc(100% /3);
    margin-right: 30px;
    text-align: center; }
    .workshop_img_inner img {
      width: 100%;
      margin-bottom: 10px;
      border: 1px solid #e1e1e1; }
    .workshop_img_inner p {
      font-weight: bold;
      height: 55px; }
.workshop_checkbox {
  text-align: center; }
  .workshop_checkbox_inner label {
    margin-right: 20px; }
    .workshop_checkbox_inner label:last-child {
      margin-right: 0; }
  .workshop_checkbox .box {
    margin-top: 40px !important; }
    .workshop_checkbox .box a {
      color: #fff;
      background-color: #ee9924;
      padding: 20px 40px;
      border-radius: 5px;
      font-weight: bold;
      display: flex;
      flex-direction: column;
      width: 30%;
      margin: 10px auto; }

/* ==========================================================================
   ETC
========================================================================== */
.pcDISP {
  display: block !important; }

.spDISP {
  display: none !important; }

.margT0 {
  margin-top: 0px; }

.margT10 {
  margin-top: 10px; }

.margT20 {
  margin-top: 20px; }

.margT30 {
  margin-top: 30px; }

.margT40 {
  margin-top: 40px; }

.margT50 {
  margin-top: 50px; }

.margT60 {
  margin-top: 60px; }

.margT70 {
  margin-top: 70px; }

.margT80 {
  margin-top: 80px; }

.margB0 {
  margin-bottom: 0px; }

.margB10 {
  margin-bottom: 10px; }

.margB20 {
  margin-bottom: 20px; }

.margB30 {
  margin-bottom: 30px; }

.margB40 {
  margin-bottom: 40px; }

.margB50 {
  margin-bottom: 50px; }

.margB60 {
  margin-bottom: 60px; }

.margB70 {
  margin-bottom: 70px; }

.margB80 {
  margin-bottom: 80px; }

.paddT0 {
  padding-top: 0px; }

.paddT10 {
  padding-top: 10px; }

.paddT20 {
  padding-top: 20px; }

.paddT30 {
  padding-top: 30px; }

.paddT40 {
  padding-top: 40px; }

.paddT50 {
  padding-top: 50px; }

.paddT60 {
  padding-top: 60px; }

.paddT70 {
  padding-top: 70px; }

.paddT80 {
  padding-top: 80px; }

.paddB0 {
  padding-bottom: 0px; }

.paddB10 {
  padding-bottom: 10px; }

.paddB20 {
  padding-bottom: 20px; }

.paddB30 {
  padding-bottom: 30px; }

.paddB40 {
  padding-bottom: 40px; }

.paddB50 {
  padding-bottom: 50px; }

.paddB60 {
  padding-bottom: 60px; }

.paddB70 {
  padding-bottom: 70px; }

.paddB80 {
  padding-bottom: 80px; }

.snsBtn {
  margin: 0 auto;
  padding: 20px;
  min-width: 980px;
  width: 100%;
  background: #FFF;
  box-sizing: border-box;
  position: relative; }
  .snsBtn li {
    vertical-align: bottom; }

#footerSnsArea {
  position: relative; }

.fade-up,
.fade-from-left,
.fade-from-right {
  transition: opacity 0.7s;
  transition: transform 0.5s; }

footer {
  line-height: 100%; }

#partnersArea #partnersList li > div > img {
  vertical-align: inherit !important; }

#partnersArea #partnersList li > a > img {
  vertical-align: inherit !important; }
