@charset "UTF-8";
.btn_white {
  width: 261px;
  height: 60px;
  display: block;
  text-decoration: none;
  color: #000;
  text-align: center;
  position: relative;
}
.btn_white:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  box-shadow: 5px 4px #97000c;
  border-radius: 28px;
  z-index: 2;
}
.btn_white span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.btn_white span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_bl.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.btn_white:hover {
  width: 256px;
  padding-left: 5px;
  color: #fff;
}
.btn_white:hover span {
  padding: 23px 0 0;
}
.btn_white:hover span:before {
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.btn_white:hover:before {
  background: #97000c;
  box-shadow: none;
  top: 4px;
  left: 5px;
}

.ie8 .btn_white {
  width: 261px;
  height: 60px;
  display: block;
  text-decoration: none;
  color: #000;
  text-align: center;
  position: relative;
}
.ie8 .btn_white:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  box-shadow: 5px 4px #97000c;
  border-radius: 28px;
  z-index: 2;
}
.ie8 .btn_white span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.ie8 .btn_white span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_bl.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.ie8 .btn_white:hover {
  width: 256px;
  padding-left: 5px;
  color: #fff;
}
.ie8 .btn_white:hover span {
  padding: 23px 0 0;
}
.ie8 .btn_white:hover span:before {
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.ie8 .btn_white:hover:before {
  background: #97000c;
  box-shadow: none;
  top: 4px;
  left: 5px;
}
.ie8 .btn_white span:before {
  background-image: url("img/arr_bl_ie8.png");
}
.ie8 .btn_white:after {
  content: '';
  position: absolute;
  background: #97000c;
  z-index: 1;
  width: 256px;
  height: 56px;
  top: 4px;
  left: 5px;
}
.ie8 .btn_white:hover span:before {
  background-image: url("img/arr_wh_ie8.png");
}

@media screen and (max-width: 600px) {
  .btn_white {
    width: 192px;
    height: 42px;
    display: block;
    border-radius: 21px;
    text-decoration: none;
    background: #fff;
    color: #000;
    box-shadow: 4px 3px #97000c;
    text-align: center;
  }
  .btn_white:before {
    display: none;
  }
  .btn_white span {
    display: inline-block;
    margin: 0 auto;
    vertical-align: top;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 14px;
    height: 14px;
    padding: 14px 0;
  }
  .btn_white span:before {
    content: '';
    width: 14px;
    height: 14px;
    background-image: url("img/arr_bl.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 10px;
  }
  .btn_white:hover {
    width: 192px;
    padding-left: 0;
    color: #000;
  }
  .btn_white:hover span {
    padding: 14px 0;
  }
  .btn_white:hover span:before {
    background-image: url("img/arr_bl.png");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
.btn_red {
  width: 256px;
  height: 56px;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  position: relative;
}
.btn_red:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #e60012;
  box-shadow: 5px 4px #97000c;
  border-radius: 28px;
  z-index: 2;
}
.btn_red span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.btn_red span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.btn_red:hover {
  width: 256px;
  padding-left: 5px;
}
.btn_red:hover span {
  padding: 23px 0 0;
}
.btn_red:hover:before {
  background: #97000c;
  box-shadow: none;
  top: 4px;
  left: 5px;
}

.btn_red_s {
  width: 150px;
  height: 36px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #e60012;
  border-radius: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 14px;
  padding: 11px 0;
}
.btn_red_s:before {
  content: '';
  width: 14px;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 8px;
}
.btn_red_s:hover {
  background-color: #97000c;
}

.ie8 .btn_red {
  width: 256px;
  height: 56px;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  position: relative;
}
.ie8 .btn_red:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #e60012;
  box-shadow: 5px 4px #97000c;
  border-radius: 28px;
  z-index: 2;
}
.ie8 .btn_red span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.ie8 .btn_red span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.ie8 .btn_red:hover {
  width: 256px;
  padding-left: 5px;
}
.ie8 .btn_red:hover span {
  padding: 23px 0 0;
}
.ie8 .btn_red:hover:before {
  background: #97000c;
  box-shadow: none;
  top: 4px;
  left: 5px;
}
.ie8 .btn_red span:before {
  background-image: url("img/arr_wh_ie8.png");
}
.ie8 .btn_red:after {
  content: '';
  position: absolute;
  background: #97000c;
  z-index: 1;
  width: 256px;
  height: 56px;
  top: 4px;
  left: 5px;
}
.ie8 .btn_red_s {
  width: 150px;
  height: 36px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #e60012;
  border-radius: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 14px;
  padding: 11px 0;
}
.ie8 .btn_red_s:before {
  content: '';
  width: 14px;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 8px;
}
.ie8 .btn_red_s:hover {
  background-color: #97000c;
}
.ie8 .btn_red_s:before {
  background-image: url("img/arr_wh_14.png");
}

@media screen and (max-width: 600px) {
  .btn_red {
    width: 192px;
    height: 42px;
    display: block;
    border-radius: 21px;
    text-decoration: none;
    background: #e60012;
    color: #fff;
    box-shadow: 4px 3px #97000c;
    text-align: center;
  }
  .btn_red:before {
    display: none;
  }
  .btn_red span {
    display: inline-block;
    margin: 0 auto;
    vertical-align: top;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 14px;
    height: 14px;
    padding: 14px 0;
  }
  .btn_red span:before {
    content: '';
    width: 14px;
    height: 14px;
    background-image: url("img/arr_wh.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 10px;
  }
  .btn_red:hover {
    width: 192px;
    padding-left: 0;
  }
  .btn_red:hover span {
    padding: 14px 0;
  }

  .btn_red_s {
    width: 150px;
    height: 24px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    background-color: #e60012;
    border-radius: 12px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 0.9em;
    line-height: 10px;
    padding: 6px 0;
  }
  .btn_red_s:before {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url("img/arr_wh_28.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 6px;
  }
}
.btn_green_l {
  width: 261px;
  height: 60px;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  position: relative;
}
.btn_green_l:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #90c31f;
  box-shadow: 5px 4px #5f8014;
  border-radius: 28px;
  z-index: 2;
}
.btn_green_l span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.btn_green_l span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.btn_green_l:hover {
  width: 256px;
  padding-left: 5px;
  color: #fff;
}
.btn_green_l:hover span {
  padding: 23px 0 0;
}
.btn_green_l:hover:before {
  background: #5f8014;
  box-shadow: none;
  top: 4px;
  left: 5px;
}

.btn_green {
  width: 200px;
  height: 48px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #90c31f;
  border-radius: 24px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 18px;
  padding: 15px 0;
}
.btn_green:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 12px;
}
.btn_green:hover {
  background-color: #5f8014;
}
.btn_green[target="_blank"]:after {
  content: '';
  width: 11px;
  height: 11px;
  background-image: url("img/i_blank.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-left: 5px;
  margin-top: 3px;
}

.btn_green_s {
  width: 150px;
  height: 36px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #90c31f;
  border-radius: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 14px;
  padding: 11px 0;
}
.btn_green_s:before {
  content: '';
  width: 14px;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 8px;
}
.btn_green_s:hover {
  background-color: #5f8014;
}

.ie8 .btn_green_l {
  width: 261px;
  height: 60px;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  position: relative;
}
.ie8 .btn_green_l:before {
  content: '';
  width: 256px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #90c31f;
  box-shadow: 5px 4px #5f8014;
  border-radius: 28px;
  z-index: 2;
}
.ie8 .btn_green_l span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
.ie8 .btn_green_l span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
.ie8 .btn_green_l:hover {
  width: 256px;
  padding-left: 5px;
  color: #fff;
}
.ie8 .btn_green_l:hover span {
  padding: 23px 0 0;
}
.ie8 .btn_green_l:hover:before {
  background: #5f8014;
  box-shadow: none;
  top: 4px;
  left: 5px;
}
.ie8 .btn_green_l span:before {
  background-image: url("img/arr_wh_ie8.png");
}
.ie8 .btn_green_l:after {
  content: '';
  position: absolute;
  background: #5f8014;
  z-index: 1;
  width: 256px;
  height: 56px;
  top: 4px;
  left: 5px;
}
.ie8 .btn_green {
  width: 200px;
  height: 48px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #90c31f;
  border-radius: 24px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 18px;
  padding: 15px 0;
}
.ie8 .btn_green:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 12px;
}
.ie8 .btn_green:hover {
  background-color: #5f8014;
}
.ie8 .btn_green[target="_blank"]:after {
  content: '';
  width: 11px;
  height: 11px;
  background-image: url("img/i_blank.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-left: 5px;
  margin-top: 3px;
}
.ie8 .btn_green:before {
  background-image: url("img/arr_wh_ie8.png");
}
.ie8 .btn_green[target="_blank"]:after {
  background-image: url("img/i_blank_ie8.png");
}
.ie8 .btn_green_s {
  width: 150px;
  height: 36px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  background-color: #90c31f;
  border-radius: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 14px;
  padding: 11px 0;
}
.ie8 .btn_green_s:before {
  content: '';
  width: 14px;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 8px;
}
.ie8 .btn_green_s:hover {
  background-color: #5f8014;
}
.ie8 .btn_green_s:before {
  background-image: url("img/arr_wh_14.png");
}

@media screen and (max-width: 600px) {
  .btn_green_l {
    width: 140px;
    height: 42px;
    display: block;
    border-radius: 21px;
    text-decoration: none;
    background: #90c31f;
    color: #fff;
    box-shadow: 4px 3px #5f8014;
    text-align: center;
  }
  .btn_green_l:before {
    display: none;
  }
  .btn_green_l span {
    display: inline-block;
    margin: 0 auto;
    vertical-align: top;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 14px;
    height: 14px;
    padding: 14px 0;
  }
  .btn_green_l span:before {
    content: '';
    width: 14px;
    height: 14px;
    background-image: url("img/arr_wh.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 10px;
  }
  .btn_green_l:hover {
    width: 140px;
    padding-left: 0;
  }
  .btn_green_l:hover span {
    padding: 14px 0;
  }

  .btn_green {
    width: 190px;
    height: 42px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    background-color: #90c31f;
    border-radius: 21px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 14px;
    padding: 14px 0;
  }
  .btn_green:before {
    content: '';
    width: 14px;
    height: 14px;
    background-image: url("img/arr_wh.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 6px;
  }
  .btn_green:hover {
    background-color: #90c31f;
  }
  .btn_green[target="_blank"]:after {
    margin-left: 5px;
    margin-top: 1px;
  }

  .btn_green_s {
    width: 150px;
    height: 24px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    background-color: #90c31f;
    border-radius: 12px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 0.9em;
    line-height: 10px;
    padding: 6px 0;
  }
  .btn_green_s:before {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url("img/arr_wh_28.png");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-right: 6px;
  }
}
html {
  background: #fff;
}

body,
div,
dl, dt, dd,
ul, ol, li,
h1, h2, h3, h4, h5, h6,
form, input, textarea,
p,
blockquote,
th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th, td {
  vertical-align: top;
  text-align: left;
}

img {
  border: 0;
  vertical-align: bottom;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

strong {
  font-weight: bold;
}

ul li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,
q:after {
  content: '';
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input,
textarea,
select {
  *font-size: 100%;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100% !important;
}

body {
  background: #fff;
  color: #000;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  line-height: 1;
  text-align: center;
  overflow-y: scroll;
}

a {
  cursor: pointer;
  text-decoration: underline;
  color: #000;
}

a:hover {
  text-decoration: none;
}

img {
  vertical-align: top;
}

strong {
  font-weight: bold;
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  *zoom: 1;
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

.sp {
  display: none;
}

.pc {
  display: inline-block;
}

@media screen and (max-width: 600px) {
  .sp {
    display: block;
  }

  .pc {
    display: none;
  }
}
html.splashing {
  background: #e60012;
}
html.splashing body {
  overflow: hidden;
}

header {
  margin: 0 auto;
  width: 960px;
  height: 100px;
  text-align: left;
  position: relative;
  z-index: 200;
}
header .logo_va {
  float: left;
  width: 143px;
  margin-top: 22px;
  margin-right: 20px;
  z-index: 300;
  overflow: visible;
}
header nav {
  float: left;
  margin-top: 38px;
}
header nav .menu {
  display: none;
}
header nav li {
  display: inline-block;
  vertical-align: top;
  padding: 0 22px;
  height: 32px;
  border-left: 1px solid #eee;
  color: #bababa;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 1.33;
  position: relative;
  text-align: center;
}
header nav li.close {
  display: none;
}
header nav li.nav1 {
  border-left: none;
}
header nav li:before {
  content: '';
  width: 1px;
  height: 32px;
  margin-left: -1px;
  display: inline-block;
  vertical-align: middle;
}
header nav li a {
  display: inline-block;
  vertical-align: middle;
  text-decoration: none;
  position: relative;
}
header nav li a:hover {
  color: #e60012;
}
header nav li span {
  display: inline-block;
  vertical-align: middle;
  text-decoration: none;
  position: relative;
}
header .logo_sumisei {
  float: right;
  width: 121px;
  margin-top: 30px;
}

#about header nav li.nav1:after,
#family header nav li.nav2:after,
#run header nav li.nav3:after,
#athlete header nav li.nav4:after,
#column header nav li.nav5:after,
#photo header nav li.nav6:after {
  content: '';
  position: absolute;
  height: 4px;
  background: #e60012;
  bottom: -34px;
  left: 22px;
}

#about header nav li.nav1:after {
  left: 28px;
}

#about header nav li.nav1:after {
  width: 120px;
}

#family header nav li.nav2:after {
  width: 48px;
}

#run header nav li.nav3:after {
  width: 48px;
}

#athlete header nav li.nav4:after {
  width: 59px;
}

#column header nav li.nav5:after {
  width: 35px;
}

#photo header nav li.nav6:after {
  width: 60px;
}

section {
  width: 100%;
  min-width: 960px;
}
section .inr {
  width: 860px;
  margin: 0 auto;
  text-align: left;
}

.p_head:before {
  content: '';
  width: 100%;
  height: 60px;
  background: url("img/pat2.gif") center top;
  display: block;
  margin-bottom: 80px;
}

.p_en {
  font-family: "brandon-grotesque", sans-serif;
  font-style: italic;
  font-size: 5em;
  color: #e60012;
}

.p_ttl {
  margin-top: 40px;
  margin-bottom: 40px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 3em;
  color: #e60012;
}

.p_lead {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}

.p_subttl {
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 2.4em;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  width: auto\9;
}

footer {
  background: #e60012;
  color: #fff;
  padding: 0 0 70px;
  width: 100%;
  min-width: 960px;
}
footer a {
  color: #fff;
}
footer nav {
  background: #97000c;
  width: 100%;
  height: 100px;
  margin-bottom: 70px;
}
footer nav a, footer nav .dead {
  display: block;
  height: 100px;
  background: transparent;
}
footer nav a:before, footer nav .dead:before {
  content: '';
  width: 1px;
  margin-left: -1px;
  display: inline-block;
  vertical-align: middle;
  height: 100px;
}
footer nav a span, footer nav .dead span {
  display: inline-block;
  vertical-align: middle;
}
footer nav a {
  text-decoration: none;
}
footer nav a:hover {
  background: #7e0008;
}
footer nav ul {
  margin: 0 auto;
  width: 959px;
  height: 100px;
  border-right: 1px solid #770009;
}
footer nav li {
  border-left: 1px solid #770009;
  float: left;
  color: #670008;
  height: 100px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 1.28;
}
footer nav .nav0 {
  width: 102px;
}
footer nav .nav1 {
  width: 198px;
}
footer nav .nav2 {
  width: 143px;
}
footer nav .nav3 {
  width: 143px;
}
footer nav .nav4 {
  width: 129px;
}
footer nav .nav5 {
  width: 101px;
}
footer nav .nav6 {
  width: 136px;
}
footer .logo_va {
  display: inline-block;
  vertical-align: middle;
  width: 181px;
  margin-right: 60px;
  margin-left: 32px;
}
footer .logo_sumisei {
  display: inline-block;
  vertical-align: middle;
  width: 213px;
}
footer .contact {
  margin-top: 60px;
  font-size: 1.4em;
}
footer .copyright {
  margin-top: 30px;
  margin-top: 60px;
  font-size: 1.2em;
}

@media screen and (max-width: 600px) {
  header {
    margin: 0 auto;
    width: 100%;
    height: 80px;
    text-align: left;
  }
  header:before {
    content: '';
    width: 100%;
    height: 80px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 100;
  }
  header .logo_va {
    float: left;
    width: 113px;
    margin-top: 18px;
    margin-right: 0;
    margin-left: 15px;
  }
  header .logo_va img {
    position: relative;
    z-index: 101;
  }
  header nav {
    float: none;
    margin-top: 0;
  }
  header nav .menu {
    display: block;
    float: right;
    width: 50px;
    height: 50px;
    background: #eee;
    margin-top: 15px;
    margin-right: 15px;
    position: relative;
    z-index: 200;
  }
  header nav .menu span {
    width: 25px;
    height: 4px;
    background: #e60012;
    position: absolute;
    left: 12px;
  }
  header nav .menu span:nth-of-type(1) {
    top: 14px;
    -webkit-transition: all .2s;
    transition: all .2s;
  }
  header nav .menu span:nth-of-type(2) {
    top: 23px;
  }
  header nav .menu span:nth-of-type(3) {
    top: 32px;
    -webkit-transition: all .2s;
    transition: all .2s;
  }
  header nav ul {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 1;
    top: -324px;
    -webkit-transition: all .5s ease-out;
    transition: all .5s ease-out;
    overflow: hidden;
  }
  header nav li {
    display: block;
    vertical-align: middle;
    padding: 0;
    background: #eee;
    border-left: none;
    width: 100%;
    height: auto;
    text-align: left;
    border-bottom: 1px solid #bababa;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
  }
  header nav li:before {
    display: none;
  }
  header nav li a {
    display: block;
    text-decoration: none;
    padding: 18px 26px;
  }
  header nav li a:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 14px;
    height: 14px;
    background: url("img/arr_re.png") no-repeat;
    background-size: contain;
    margin-right: 8px;
  }
  header nav li a:hover {
    color: #000;
  }
  header nav li.dead {
    display: none;
  }
  header nav li.close {
    display: block;
    background: #bababa;
    position: relative;
  }
  header nav li.close a {
    padding: 18px 26px 18px 48px;
  }
  header nav li.close a:before, header nav li.close a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 12px;
    height: 2px;
    background: #e60012;
    margin-right: 0;
    position: absolute;
    top: 23px;
    left: 26px;
  }
  header nav li.close a:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
  }
  header nav li.close a:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
  }
  header nav.active ul {
    top: 80px;
  }
  header nav.active .menu span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    -ms-transform: translateY(10px) rotate(-45deg);
        transform: translateY(10px) rotate(-45deg);
  }
  header nav.active .menu span:nth-of-type(2) {
    opacity: 0;
  }
  header nav.active .menu span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    -ms-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-8px) rotate(45deg);
  }
  header nav.active ul {
    display: block;
  }
  header .logo_sumisei {
    float: right;
    width: 70px;
    margin-top: 30px;
    margin-right: 12px;
    position: relative;
    z-index: 200;
  }

  #about header nav li.nav1:after,
  #event header nav li.nav2:after,
  #athlete header nav li.nav3:after,
  #column header nav li.nav4:after {
    display: none;
  }

  section {
    width: 100%;
    min-width: 100%;
  }
  section .inr {
    width: 86.7%;
    margin: 0 auto;
    text-align: center;
  }

  .p_head:before {
    content: '';
    width: 100%;
    height: 10px;
    background: url("img/pat2.gif") center top;
    display: block;
    margin-bottom: 40px;
  }

  .p_en {
    font-family: "brandon-grotesque", sans-serif;
    font-style: italic;
    font-size: 2.5em;
    color: #e60012;
  }

  .p_ttl {
    margin-top: 30px;
    margin-bottom: 20px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.8em;
    line-height: 1.39;
    color: #e60012;
  }

  .p_lead {
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
    font-size: 1.2em;
    line-height: 1.67;
    text-align: left;
  }

  .p_subttl {
    color: #e60012;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.8em;
    line-height: 1.39;
  }

  footer {
    background: #e60012;
    color: #fff;
    padding: 0 0 25px;
    width: 100%;
    min-width: 100%;
  }
  footer a {
    color: #fff;
  }
  footer nav {
    background: #97000c;
    width: 100%;
    height: auto;
    margin-bottom: 37px;
  }
  footer nav a, footer nav .dead {
    height: 50px;
    background: transparent;
  }
  footer nav a:before, footer nav .dead:before {
    content: '';
    width: 1px;
    margin-left: -1px;
    display: inline-block;
    vertical-align: middle;
    height: 50px;
  }
  footer nav a span, footer nav .dead span {
    display: inline-block;
    vertical-align: middle;
  }
  footer nav a {
    height: 50px;
  }
  footer nav a:hover {
    background: #97000c;
  }
  footer nav ul {
    margin: 0 auto;
    width: 100%;
    height: auto;
    border-right: none;
  }
  footer nav li {
    height: 50px;
    border-left: none;
    float: none;
    border-top: 1px solid #770009;
    display: inline-block;
    vertical-align: top;
    color: #670008;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 1.33;
  }
  footer nav .nav0 {
    width: 100%;
    border-top: none;
  }
  footer nav .nav1,
  footer nav .nav2,
  footer nav .nav3,
  footer nav .nav4,
  footer nav .nav5,
  footer nav .nav6 {
    width: 50%;
  }
  footer nav .nav1 a,
  footer nav .nav3 a,
  footer nav .nav5 a {
    border-right: 1px solid #770009;
  }
  footer .logo_va {
    display: inline-block;
    vertical-align: middle;
    width: 91px;
    margin-right: 30px;
    margin-left: 15px;
  }
  footer .logo_sumisei {
    display: inline-block;
    vertical-align: middle;
    width: 106px;
  }
  footer .contact {
    margin-top: 34px;
    font-size: 1.1em;
    line-height: 1.67;
  }
  footer .copyright {
    margin-top: 25px;
    font-size: 1em;
  }
}
@media screen and (max-width: 320px) {
  /*
  	.p_ttl,
  	.p_subttl {
  		
  		br.sp {
  			display: none;
  		}
  	}
  */
  section .inr {
    width: 90%;
  }
}
#top .splash {
  width: 100%;
  height: 100%;
  position: relative;
}
#top .splash .layer {
  width: 100%;
  height: 140%;
  overflow: hidden;
  position: fixed;
  background: #e60012;
  z-index: 1000;
  top: 0;
  left: 0;
}
#top .splash #loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -20px;
  margin-left: -100px;
  width: 200px;
  height: 40px;
  text-align: center;
  color: #fff;
  z-index: 1001;
}
#top .splash #loading p {
  font-family: "brandon-grotesque", sans-serif;
}
#top .splash #loading p #load-label {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.4em;
}
#top .splash #loading p #load-text {
  display: inline-block;
  vertical-align: middle;
  width: 50px;
  text-align: right;
  font-size: 1.6em;
}
#top .splash #bar {
  width: 200px;
  height: 4px;
  border: 2px solid #fff;
  font-size: 1px;
  margin-top: 10px;
}
#top .splash #bar span {
  display: block;
  width: 0;
  height: 4px;
  background: #fff;
}
#top .splash #anim {
  position: fixed;
  z-index: 1001;
  width: 390px;
  height: 420px;
  top: 50%;
  left: 50%;
  margin-top: -210px;
  margin-left: -195px;
}
#top .splash #anim .logo {
  position: absolute;
  left: 50%;
  width: 0;
  opacity: 0;
  top: 156px;
  margin-left: 0;
}
#top .splash #anim .txt {
  color: #fff;
  font-size: 1.6em;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  line-height: 1.63;
  position: absolute;
  bottom: 32px;
  width: 100%;
  display: none;
}
#top .s_en {
  display: inline-block;
  width: 197px;
  height: 23px;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
  font-style: italic;
  font-size: 1.6em;
  padding-top: 13px;
}
#top .s_en.white {
  background: #fff;
  color: #e60012;
  background: url("img/sq1_wh.png") no-repeat;
  background-size: contain;
}
#top .s_en.red {
  background: #e60012;
  color: #fff;
  background: url("img/sq1_re.png") no-repeat;
  background-size: contain;
}
#top .s_movie {
  width: 100%;
  height: 700px;
  background: #fff;
}
#top .s_movie .movie {
  position: relative;
  width: 100%;
  height: 700px;
  z-index: 1;
  overflow: hidden;
}
#top .s_movie .movie:before {
  content: '';
  width: 100%;
  height: 700px;
  position: absolute;
  top: 0;
  left: 0;
  background: url("img/pat1.png") center top;
  z-index: 2;
}
#top .s_movie .movie .logo {
  position: absolute;
  z-index: 3;
  left: 50%;
  width: 0;
  height: auto;
  top: 314px;
  margin-left: 0;
  opacity: 0;
}
#top .s_movie .movie .logo.fin {
  width: 499px !important;
  top: 114px !important;
  margin-left: -250px !important;
  opacity: 1 !important;
}
#top .s_movie .movie video {
  position: absolute;
  z-index: 1;
}
#top .s_movie .movie .bg {
  display: none;
  position: absolute;
  z-index: 1;
  max-width: inherit;
}
#top .s_about {
  background: #e60012;
  color: #fff;
  padding: 70px 0 0;
}
#top .s_about .s_ttl {
  width: 440px;
  margin: 20px auto;
}
#top .s_about .logo {
  width: 326px;
  margin: 0 auto;
  position: relative;
}
#top .s_about .logo:hover img {
  -webkit-animation: gakugaku .2s infinite;
          animation: gakugaku .2s infinite;
}
#top .s_about .txt1 {
  margin-top: 26px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}
#top .s_about .btn_white {
  margin: 30px auto 0;
}
#top .s_about .s_subttl {
  width: 232px;
  margin: 46px auto 28px;
}
#top .s_about .btn_area {
  width: 660px;
  margin: 30px auto 0;
  background: #fff;
  border-radius: 10px;
  padding: 40px 0;
  position: relative;
}
#top .s_about .btn_area .comment {
  position: absolute;
  width: 114px;
  height: auto;
  top: -74px;
  right: 56px;
}
#top .s_about .btn_area ul {
  margin: 0 auto;
}
#top .s_about .btn_area li {
  display: inline-block;
  vertical-align: top;
  margin: 0 15px;
}
#top .s_about .txt2 {
  margin-top: 70px;
  background: #97000c;
  width: 100%;
  height: 100px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 100px;
}
#top .s_about .loopslider {
  width: 100%;
  height: 186px;
  overflow: hidden;
  text-align: left;
  position: relative;
}
#top .s_about .loopslider .wrap {
  position: absolute;
  width: 5200px;
  height: 186px;
  top: 0;
  left: 0;
  overflow: hidden;
}
#top .s_about .loopslider ul {
  float: left;
  width: 2600px;
  height: 186px;
  overflow: hidden;
}
#top .s_about .loopslider li {
  width: 260px;
  height: 186px;
  float: left;
  display: inline;
  overflow: hidden;
}
#top .s_athlete {
  padding: 70px 0 80px;
  background: url("img/pat2.gif") center top;
}
#top .s_athlete .s_ttl {
  width: 473px;
  margin: 46px auto 0;
  position: relative;
}
#top .s_athlete .s_ttl .balloon {
  position: absolute;
  width: 103px;
  height: auto;
  top: -63px;
  left: -94px;
}
#top .s_athlete .txt1 {
  margin-top: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}
#top .s_athlete .list {
  width: 960px;
  margin: 54px auto 0;
  overflow: hidden;
}
#top .s_athlete .list ul {
  margin: 0 -20px;
  width: 1000px;
  letter-spacing: -.4em;
}
#top .s_athlete .list li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin: 0 20px 40px;
  letter-spacing: normal;
  width: 160px;
}
#top .s_athlete .list .img {
  width: 160px;
}
#top .s_athlete .list .img img {
  width: 160px;
  height: 160px;
  border-radius: 80px;
}
#top .s_athlete .list .sport {
  margin-top: 20px;
  font-size: 1.2em;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  color: #e60012;
}
#top .s_athlete .list .name {
  margin-top: 10px;
  font-size: 1.8em;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#top .s_athlete .list .notes {
  margin: 10px -10px 0;
  font-size: 1em;
}
#top .s_athlete .txt2 {
  margin: 20px auto 0;
  font-size: 1.4em;
}
#top .s_athlete .btn_area {
  margin: 20px auto 0;
  display: inline-block;
}
#top .s_column {
  padding: 70px 0 80px;
  background-color: #eee;
}
#top .s_column .s_ttl {
  width: 66px;
  margin: 50px auto 0;
}
#top .s_column .txt1 {
  margin-top: 18px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}
#top .s_column .list {
  margin: 50px auto 0;
  width: 886px;
  text-align: center;
  letter-spacing: -.4em;
}
#top .s_column .list li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  background-color: #fff;
  width: 270px;
  padding: 40px 30px 0;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  border-radius: 4px;
  margin: 0 13px 0 12px;
  letter-spacing: normal;
  text-align: left;
  cursor: pointer;
}
#top .s_column .list li > p.coming {
  color: #e60012;
  text-align: center;
  font-size: 1.6em;
  margin-top: 90px;
}
#top .s_column .list li.coming {
  cursor: default;
}
#top .s_column .list .img {
  margin-bottom: 20px;
  position: relative;
}
#top .s_column .list .vol {
  background-color: #e60012;
  color: #fff;
  position: absolute;
  top: -16px;
  left: -10px;
  z-index: 2;
  width: 70px;
  height: 26px;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
  font-style: italic;
  font-size: 2.4em;
  line-height: 0.8;
  overflow: visible;
  text-align: center;
}
#top .s_column .list .vol:before {
  content: '';
  position: absolute;
  top: -10px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 70px;
  border-color: transparent transparent #e60013 transparent;
}
#top .s_column .list .vol span {
  font-size: 16px;
}
#top .s_column .list .face {
  display: inline-block;
  vertical-align: middle;
  width: 60px;
  margin-right: 10px;
}
#top .s_column .list .name {
  display: inline-block;
  vertical-align: middle;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  line-height: 1.8;
}
#top .s_column .list .name .kanji {
  font-size: 1.4em;
}
#top .s_column .list .name .furi {
  font-size: 1em;
}
#top .s_column .list .profile {
  margin-top: 5px;
  line-height: 1.6;
}
#top .s_column .list .btn {
  margin: 18px auto 30px;
  text-align: center;
}
#top .s_column .list .btn a {
  margin: 0 auto;
}
#top .s_column .list .hover .btn_green_s {
  background-color: #5f8014;
}
#top .s_column .btn_area {
  margin: 50px auto 0;
  display: inline-block;
}
#top .s_photo {
  padding: 80px 0 0;
  height: 456px;
  background-image: url("img/top_s6_bg_pc.jpg");
  position: relative;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  color: #fff;
}
#top .s_photo:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 456px;
  background-image: url("img/top_s6_pat.gif");
  background-image: url("img/top_s6_pat_ie8.gif") \9 ;
  background-size: 2px 2px;
  opacity: 0.4;
  z-index: 1;
}
#top .s_photo .s_en,
#top .s_photo .s_ttl,
#top .s_photo .txt1,
#top .s_photo .btn_area {
  position: relative;
  z-index: 2;
}
#top .s_photo .s_ttl {
  width: 178px;
  margin: 46px auto 0;
}
#top .s_photo .txt1 {
  font-size: 1.6em;
  line-height: 1.75;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  margin-top: 18px;
}
#top .s_photo .btn_area {
  margin: 38px auto 0;
  display: inline-block;
}
#top .s_calendar {
  padding: 80px 0 100px;
  position: relative;
}
#top .s_calendar .s_ttl {
  width: 273px;
  margin: 46px auto 0;
}
#top .s_calendar .txt1 {
  margin-top: 15px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}
#top .s_calendar .img {
  margin-top: 32px;
  position: relative;
}
#top .s_calendar .img li {
  display: inline-block;
  vertical-align: bottom;
  margin: 0 15px;
  width: 267px;
}
#top .s_calendar .img li img {
  width: 100%;
  height: auto;
}
#top .s_calendar .balloon {
  position: absolute;
  z-index: 2;
  top: -188px;
  left: 50%;
  margin-left: 283px;
  width: 194px;
  height: 169px;
  background-image: url("img/top_s4_balloon.png");
  background-repeat: no-repeat;
  background-size: contain;
  color: #fff;
  text-align: center;
}
#top .s_calendar .balloon p {
  padding-top: 56px;
  margin-bottom: 10px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 1.29;
}
#top .s_calendar .balloon a {
  display: inline-block;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: 14px;
  color: #fff;
  padding-left: 18px;
  font-size: 1.2em;
  line-height: 14px;
}
#top .s_calendar .txt2 {
  margin: 30px auto 0;
  font-size: 1.4em;
  line-height: 1.71;
}
#top .s_calendar .btn_area {
  margin: 28px auto 0;
  display: inline-block;
}

@-webkit-keyframes big {
  0% {
    position: relative;
    width: 100%;
    max-width: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
  100% {
    position: absolute;
    width: 102%;
    max-width: 102%;
    top: -1%;
    bottom: -1%;
    left: -1%;
    right: -1%;
  }
}
@-webkit-keyframes gakugaku {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(2px, 0) rotateZ(1deg);
            transform: translate(2px, 0) rotateZ(1deg);
  }
  50% {
    -webkit-transform: translate(0px, 2px) rotateZ(0deg);
            transform: translate(0px, 2px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(2px, 0px) rotateZ(-1deg);
            transform: translate(2px, 0px) rotateZ(-1deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
@keyframes gakugaku {
  0% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
  25% {
    -webkit-transform: translate(2px, 0) rotateZ(1deg);
            transform: translate(2px, 0) rotateZ(1deg);
  }
  50% {
    -webkit-transform: translate(0px, 2px) rotateZ(0deg);
            transform: translate(0px, 2px) rotateZ(0deg);
  }
  75% {
    -webkit-transform: translate(2px, 0px) rotateZ(-1deg);
            transform: translate(2px, 0px) rotateZ(-1deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotateZ(0deg);
            transform: translate(0px, 0px) rotateZ(0deg);
  }
}
.ie8 #top .s_en.white {
  background: url("img/sq1_wh_ie8.png") no-repeat;
}
.ie8 #top .s_en.red {
  background: url("img/sq1_re_ie8.png") no-repeat;
}
.ie8 #top .s_movie .movie video {
  display: none;
}
.ie8 #top .s_movie .movie .bg {
  display: block;
}
.ie8 #top .s_calendar .balloon {
  background-image: url("img/top_s4_balloon_ie8.png");
}
.ie8 #top .s_calendar .balloon a {
  background-image: url("img/arr_wh_14.png");
}

@media screen and (max-width: 600px) {
  #top .splash #loading {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -100px;
    width: 200px;
    height: 40px;
    text-align: center;
    color: #fff;
    z-index: 1001;
  }
  #top .splash #loading p {
    font-family: "brandon-grotesque", sans-serif;
  }
  #top .splash #loading p #load-label {
    display: inline-block;
    vertical-align: middle;
    font-size: 1.4em;
  }
  #top .splash #loading p #load-text {
    display: inline-block;
    vertical-align: middle;
    width: 50px;
    text-align: right;
    font-size: 1.6em;
  }
  #top .splash #bar {
    width: 200px;
    height: 4px;
    border: 2px solid #fff;
    font-size: 1px;
    margin-top: 10px;
  }
  #top .splash #bar span {
    display: block;
    width: 0;
    height: 4px;
    background: #fff;
  }
  #top .splash #anim {
    width: 250px;
    height: 270px;
    margin-top: -135px;
    margin-left: -125px;
  }
  #top .splash #anim .logo {
    width: 0;
    opacity: 0;
    top: 100px;
    margin-left: 0;
  }
  #top .splash #anim .txt {
    font-size: 1.2em;
    line-height: 1.5;
    bottom: 14px;
  }
  #top .s_en {
    display: inline-block;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 1.2em;
    width: 148px;
    height: 18px;
    padding-top: 9px;
  }
  #top .s_en.white {
    background: #fff;
    color: #e60012;
    background: url("img/sq1_wh.png") no-repeat;
    background-size: contain;
  }
  #top .s_en.red {
    background: #e60012;
    color: #fff;
    background: url("img/sq1_re.png") no-repeat;
    background-size: contain;
  }
  #top .s_movie {
    height: 350px;
    background: #fff;
  }
  #top .s_movie .movie {
    position: relative;
    width: 100%;
    height: 350px;
    z-index: 1;
    background: url("img/top_s1_img01_sp.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
  }
  #top .s_movie .movie:before {
    content: '';
    width: 100%;
    height: 350px;
    position: absolute;
    top: 0;
    left: 0;
    background: url("img/pat1_sp.png") center top;
    background-size: 2px 2px;
    z-index: 2;
  }
  #top .s_movie .movie .logo {
    position: absolute;
    z-index: 3;
    left: 50%;
    width: 0;
    height: auto;
    top: 165px;
    margin-left: 0;
    opacity: 0;
  }
  #top .s_movie .movie .logo.fin {
    width: 190px !important;
    top: 90px !important;
    margin-left: -95px !important;
    opacity: 1 !important;
  }
  #top .s_movie .movie video {
    display: none;
  }
  #top .s_movie .movie .bg {
    display: none;
  }
  #top .s_about {
    background: #e60012;
    color: #fff;
    padding: 40px 0 0;
  }
  #top .s_about .s_ttl {
    width: 270px;
    margin: 17px auto 0;
  }
  #top .s_about .logo {
    width: 225px;
    margin: 9px auto 0;
  }
  #top .s_about .txt1 {
    margin-top: 16px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 1.67;
  }
  #top .s_about .btn_white {
    margin: 15px auto 0;
  }
  #top .s_about .s_subttl {
    width: 147px;
    margin: 35px auto 10px;
  }
  #top .s_about .btn_area {
    width: 90%;
    margin: 20px auto 0;
    background: #fff;
    border-radius: 10px;
    padding: 15px 0;
    position: relative;
  }
  #top .s_about .btn_area .comment {
    position: absolute;
    width: 75px;
    height: auto;
    top: -47px;
    right: 50%;
    margin-right: -155px;
  }
  #top .s_about .btn_area ul {
    margin: 0 auto;
  }
  #top .s_about .btn_area li {
    display: inline-block;
    vertical-align: top;
    margin: 0 5px;
  }
  #top .s_about .txt2 {
    margin-top: 38px;
    padding-top: 18px;
    height: 52px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.1em;
    line-height: 1.45;
  }
  #top .s_about .loopslider {
    width: 100%;
    height: 80px;
    overflow: hidden;
    text-align: left;
    position: relative;
  }
  #top .s_about .loopslider .wrap {
    top: 0;
    left: 0;
    width: 2500px;
    height: 80px;
    overflow: hidden;
    position: absolute;
  }
  #top .s_about .loopslider ul {
    float: left;
    width: 1250px;
    height: 80px;
    overflow: hidden;
  }
  #top .s_about .loopslider li {
    width: 125px;
    height: 80px;
    float: left;
    display: inline;
    overflow: hidden;
  }
  #top .s_athlete {
    padding: 40px 0;
    overflow: hidden;
  }
  #top .s_athlete .s_ttl {
    width: 250px;
    margin: 20px auto 0;
    position: relative;
  }
  #top .s_athlete .s_ttl .balloon {
    width: 81px;
    height: auto;
    top: -66px;
    left: -39px;
  }
  #top .s_athlete .txt1 {
    margin-top: 20px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 1.67;
  }
  #top .s_athlete ul {
    margin: 0 -20px;
    width: 1000px;
    letter-spacing: -.4em;
  }
  #top .s_athlete li {
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin: 0 20px 40px;
    letter-spacing: normal;
    width: 160px;
  }
  #top .s_athlete .img {
    width: 160px;
  }
  #top .s_athlete .img img {
    width: 160px;
    height: 160px;
    border-radius: 80px;
  }
  #top .s_athlete .sport {
    margin-top: 20px;
    font-size: 1.2em;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    color: #e60012;
  }
  #top .s_athlete .name {
    margin-top: 10px;
    font-size: 1.8em;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  }
  #top .s_athlete .notes {
    margin-top: 10px;
    font-size: 1em;
  }
  #top .s_athlete .list {
    margin: 12px -5px 0;
    width: auto;
    overflow: hidden;
  }
  #top .s_athlete .list ul {
    margin: 0;
    width: auto;
  }
  #top .s_athlete .list li {
    margin: 0 0 20px;
    width: 100px;
  }
  #top .s_athlete .list .img {
    width: 80px;
    margin: 0 auto;
  }
  #top .s_athlete .list .img img {
    border-radius: 90px;
    width: 80px;
    height: 80px;
  }
  #top .s_athlete .list .sport {
    margin-top: 10px;
    font-size: 1em;
  }
  #top .s_athlete .list .name {
    margin-top: 8px;
    font-size: 1.2em;
  }
  #top .s_athlete .list .notes {
    margin: 8px 10px 0;
    font-size: 1em;
    line-height: 1.4;
  }
  #top .s_athlete .txt2 {
    margin: 10px auto 0;
    font-size: 1.2em;
  }
  #top .s_athlete .btn_area {
    margin: 10px auto 0;
    display: inline-block;
  }
  #top .s_column {
    padding: 40px 0;
  }
  #top .s_column .s_ttl {
    width: 50px;
    margin: 20px auto 0;
  }
  #top .s_column .txt1 {
    margin-top: 24px;
    font-size: 1.2em;
    line-height: 1.67;
  }
  #top .s_column .list {
    margin: 25px auto 0;
    width: 90%;
    text-align: left;
    letter-spacing: -.4em;
  }
  #top .s_column .list li {
    display: inline-block;
    vertical-align: top;
    position: relative;
    background-color: #fff;
    width: 37.6%;
    height: auto;
    padding: 0 4%;
    -moz-box-sizing: content-box;
         box-sizing: content-box;
    border-radius: 2px;
    margin: 0 2.2% 4.4%;
    letter-spacing: normal;
    text-align: left;
    cursor: pointer;
  }
  #top .s_column .list li > p.coming {
    color: #e60012;
    text-align: center;
    font-size: 1.2em;
    margin-top: 65px;
  }
  #top .s_column .list li.coming {
    cursor: default;
  }
  #top .s_column .list .img {
    margin-top: 20px;
    margin-bottom: 10px;
    position: relative;
  }
  #top .s_column .list .vol {
    top: -8px;
    left: -5px;
    z-index: 2;
    width: 43px;
    height: 16px;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 1.5em;
    line-height: 0.8;
    overflow: visible;
    text-align: center;
  }
  #top .s_column .list .vol:before {
    content: '';
    position: absolute;
    top: -6px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 6px 43px;
    border-color: transparent transparent #e60013 transparent;
  }
  #top .s_column .list .vol span {
    font-size: 10px;
  }
  #top .s_column .list .face {
    display: inline-block;
    vertical-align: middle;
    width: 34%;
    margin-right: 2%;
  }
  #top .s_column .list .name {
    display: inline-block;
    vertical-align: middle;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    line-height: 1.6;
    margin-left: -5px;
    margin-right: -20px;
  }
  #top .s_column .list .name .kanji {
    display: inline-block;
    font-size: 1.2em;
    text-indent: 5px;
  }
  #top .s_column .list .name .furi {
    display: none;
  }
  #top .s_column .list .profile {
    margin-top: 5px;
    line-height: 1.6;
  }
  #top .s_column .list .profile br {
    display: none;
  }
  #top .s_column .list .profile .sp {
    display: inline-block;
  }
  #top .s_column .list .btn {
    margin: 8px auto 20px;
  }
  #top .s_column .list .btn a {
    margin: 0 auto;
    width: 78%;
  }
  #top .s_column .list .hover .btn_green_s {
    background-color: #90c31f;
  }
  #top .s_column .btn_area {
    margin: 5px auto 0;
    display: inline-block;
  }
  #top .s_photo {
    padding: 100px 0 0;
    height: 396px;
    background-image: url("img/top_s6_bg_sp.jpg");
    background-size: 100% auto;
  }
  #top .s_photo:before {
    width: 100%;
    height: 396px;
  }
  #top .s_photo .s_ttl {
    width: 131px;
    margin: 16px auto 0;
  }
  #top .s_photo .txt1 {
    font-size: 1.2em;
    line-height: 1.67;
    margin-top: 16px;
    padding: 0 20px;
  }
  #top .s_photo .btn_area {
    margin: 20px auto 0;
    display: inline-block;
  }
  #top .s_calendar {
    padding: 40px 0 50px;
    overflow: hidden;
  }
  #top .s_calendar .s_ttl {
    width: 205px;
    margin: 15px auto 0;
  }
  #top .s_calendar .txt1 {
    margin-top: 20px;
    font-size: 1.2em;
    line-height: 1.67;
  }
  #top .s_calendar .img {
    margin-top: 40px;
  }
  #top .s_calendar .img ul {
    width: 318px;
    margin: 0 auto;
    zoom: 1;
  }
  #top .s_calendar .img ul:before, #top .s_calendar .img ul:after {
    content: '';
    display: table;
  }
  #top .s_calendar .img ul:after {
    clear: both;
  }
  #top .s_calendar .img li {
    margin: 0 13px;
    width: 133px;
  }
  #top .s_calendar .img li:nth-child(1) {
    float: left;
  }
  #top .s_calendar .img li:nth-child(2) {
    margin-top: 58px;
    float: right;
  }
  #top .s_calendar .img li:nth-child(3) {
    margin-top: 20px;
    float: left;
  }
  #top .s_calendar .img li img {
    width: 100%;
    height: auto;
  }
  #top .s_calendar .balloon {
    top: -37px;
    left: 50%;
    margin-left: 30px;
    width: 134px;
    height: 117px;
  }
  #top .s_calendar .balloon p {
    padding-top: 33px;
    margin-bottom: 4px;
    font-size: 1em;
    line-height: 1.3;
  }
  #top .s_calendar .balloon a {
    height: 10px;
    background-size: 10px 10px;
    padding-left: 14px;
    font-size: 0.9em;
    line-height: 10px;
  }
  #top .s_calendar .txt2 {
    margin: 22px auto 0;
    font-size: 1.2em;
    line-height: 1.75;
  }
  #top .s_calendar .btn_area {
    margin: 26px auto 0;
  }

  .ie8 #top .s_movie .movie video {
    display: none;
  }
  .ie8 #top .s_movie .movie .bg {
    display: none;
  }
}
@media screen and (max-width: 320px) {
  #top .s_about .btn_green_l {
    width: 120px;
  }
  #top .s_about .btn_green_l span:before {
    margin-right: 6px;
  }
  #top .s_athlete .s_ttl .balloon {
    left: -32px;
  }
  #top .s_column .list {
    width: 96%;
  }
  #top .s_photo {
    height: 338px;
    padding: 70px 0 0;
  }
  #top .s_photo:before {
    height: 338px;
  }
  #top .s_photo .txt1 br {
    display: none;
  }
  #top .s_calendar .balloon {
    margin-left: 20px;
  }
  #top .s_calendar .img ul {
    width: 298px;
  }
  #top .s_calendar .img li {
    margin: 0 8px;
  }
}
#modal_mosaicart {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 500;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding: 20vh 0 10vh;
  background: rgba(0, 0, 0, 0.8);
}
#modal_mosaicart .wrap {
  width: 860px;
  background: #fff;
  margin: 0 auto;
  position: relative;
  padding-bottom: 45px;
}
#modal_mosaicart .badge {
  position: absolute;
  width: 275px;
  background: #e60012;
  color: #fff;
  top: -32px;
  left: 35px;
  padding: 23px 0 26px;
}
#modal_mosaicart .badge::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 21px 275px;
  border-color: transparent transparent #e60012 transparent;
  position: absolute;
  top: -21px;
  left: 0;
}
#modal_mosaicart .badge p {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
}
#modal_mosaicart .bal {
  position: absolute;
  left: -96px;
  top: -83px;
  width: 240px;
}
#modal_mosaicart .subttl {
  width: 245px;
  margin: 0 auto 15px;
}
#modal_mosaicart .btn_s {
  display: block;
  margin: 14px auto 0;
  width: 205px;
  height: 36px;
  border-radius: 18px;
  text-decoration: none;
  background: #fff;
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  line-height: 17px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  position: relative;
  padding-top: 9px;
}
#modal_mosaicart .btn_s::before {
  content: '';
  width: 17px;
  height: 17px;
  background: url("img/ico_zoom.png") no-repeat left top/17px 39px;
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
}
#modal_mosaicart .btn_s .size {
  font-size: 10px;
}
#modal_mosaicart .btn_s:hover {
  background: #97000c;
  color: #fff;
}
#modal_mosaicart .btn_s:hover::before {
  background: url("img/ico_zoom.png") no-repeat left bottom/17px 39px;
}
#modal_mosaicart .btn_s.sp {
  display: none;
}
#modal_mosaicart .ttl {
  margin: -22px auto 0;
  width: 535px;
  position: relative;
}
#modal_mosaicart .ttl .sub {
  display: block;
  background: #e60012;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  width: 480px;
  height: 44px;
  margin: 0 auto 30px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding-top: 15px;
  font-size: 1.2em;
}
#modal_mosaicart .btn_area p {
  width: 185px;
  margin: 18px auto 12px;
}
#modal_mosaicart .btn_area a {
  margin: 0 auto;
}
#modal_mosaicart #modal_close {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: #e60012;
  display: block;
  border-radius: 20px;
}
#modal_mosaicart #modal_close:hover {
  background: #97000c;
}

@media screen and (max-width: 600px) {
  #modal_mosaicart {
    padding: 160px 0 40px;
  }
  #modal_mosaicart .wrap {
    width: 90.7%;
    padding-bottom: 30px;
  }
  #modal_mosaicart .badge {
    width: 254px;
    top: -32px;
    left: 50%;
    margin-left: -127px;
    padding: 0 0 15px;
  }
  #modal_mosaicart .badge::before {
    border-width: 0 0 18px 254px;
    top: -18px;
  }
  #modal_mosaicart .badge p {
    font-size: 1em;
  }
  #modal_mosaicart .badge .btn_s {
    display: none;
  }
  #modal_mosaicart .bal {
    position: absolute;
    left: 27px;
    top: -64px;
    width: 200px;
  }
  #modal_mosaicart .subttl {
    width: 288px;
    margin: -12px -17px 8px;
    position: relative;
  }
  #modal_mosaicart .btn_s {
    margin: 20px auto 0;
    background: #eee;
  }
  #modal_mosaicart .btn_s.sp {
    display: block;
  }
  #modal_mosaicart .ttl {
    margin: 20px auto 0;
    width: 312px;
    max-width: 92%;
    position: relative;
  }
  #modal_mosaicart .ttl .sub {
    width: 290px;
    max-width: 100%;
    height: auto;
    margin: 0 auto 22px;
    padding: 5px 0 4px;
    font-size: 1em;
    line-height: 1.4;
  }
  #modal_mosaicart .btn_area p {
    margin: 20px auto 12px;
  }
  #modal_mosaicart .btn_area a {
    width: 192px;
  }
  #modal_mosaicart #modal_close {
    position: absolute;
    right: 5%;
  }
}
#about .p_head {
  padding-bottom: 120px;
}
#about .concept {
  height: 500px;
  background: url("about/img/about_concept_img01_pc.jpg") no-repeat;
  background-size: cover;
  background-position: center top;
  position: relative;
}
#about .concept .txt_area {
  position: absolute;
  top: -60px;
  left: 50%;
  margin-left: 30px;
  background: rgba(230, 0, 18, 0.9);
  width: 314px;
  height: 280px;
  color: #fff;
  text-align: left;
  padding: 60px 43px;
}
#about .concept .concept_en {
  font-family: "brandon-grotesque", sans-serif;
  font-style: italic;
  font-size: 2em;
}
#about .concept .concept_ttl {
  margin-top: 24px;
  width: 300px;
}
#about .concept .txt {
  margin-top: 30px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
}
#about .s_1 {
  padding: 130px 0 0;
}
#about .s_1 .txt_area {
  float: right;
  width: 510px;
}
#about .s_1 .txt1 {
  margin-top: 55px;
  font-size: 1.6em;
  line-height: 1.75;
  margin-right: -10px;
}
#about .s_1 .logo {
  float: left;
  width: 241px;
}
#about .s_1 .img_area {
  width: 100%;
  height: 186px;
  min-width: 960px;
  overflow: hidden;
  position: relative;
  margin-top: 124px;
}
#about .s_1 .img_area ul {
  width: 1300px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  margin-left: -650px;
  top: 0;
}
#about .s_1 .img_area li {
  float: left;
  display: inline;
  width: 260px;
}
#about .s_2 {
  padding: 120px 0 130px;
}
#about .s_2 .txt1 {
  margin-top: 55px;
  font-size: 1.6em;
  line-height: 1.75;
}
#about .s_2 .btn_area {
  margin-top: 45px;
}
#about .s_2 .btn_area ul {
  letter-spacing: -.4em;
}
#about .s_2 .btn_area li {
  display: inline-block;
  vertical-align: top;
  margin-right: 30px;
  letter-spacing: normal;
}

.ie8 #about .concept .txt_area {
  background: url("about/img/bg_red_ie8.png");
}

@media screen and (min-width: 1300px) {
  #about .s_1 .img_area {
    width: 100%;
    height: auto;
    min-width: 100%;
    overflow: hidden;
    position: relative;
    margin-top: 124px;
  }
  #about .s_1 .img_area ul {
    width: 100%;
    height: auto;
    overflow: hidden;
    position: relative;
    left: 0;
    margin-left: 0;
    top: 0;
    display: table;
  }
  #about .s_1 .img_area li {
    float: none;
    display: table-cell;
    width: 20%;
  }
}
@media screen and (max-width: 600px) {
  #about .p_head {
    padding-bottom: 40px;
  }
  #about .concept {
    height: 240px;
    background: url("about/img/about_concept_img01_sp.jpg") no-repeat;
    background-size: cover;
    background-position: center top;
    position: relative;
    margin-bottom: 186px;
  }
  #about .concept .txt_area {
    position: absolute;
    top: 200px;
    left: 7%;
    margin-left: 0;
    background: rgba(230, 0, 18, 0.9);
    width: 72%;
    height: 158px;
    color: #fff;
    text-align: left;
    padding: 28px 7% 40px;
  }
  #about .concept .concept_en {
    font-family: "brandon-grotesque", sans-serif;
    font-style: italic;
    font-size: 1.2em;
  }
  #about .concept .concept_ttl {
    margin-top: 18px;
    width: 275px;
  }
  #about .concept .txt {
    margin-top: 25px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.2em;
    line-height: 1.67;
    margin-right: -10px;
  }
  #about .s_1 {
    padding: 45px 0 0;
  }
  #about .s_1 .txt_area {
    float: none;
    width: auto;
  }
  #about .s_1 .txt1 {
    text-align: left;
    margin-top: 20px;
    font-size: 1.2em;
    line-height: 1.67;
    margin-right: 0;
  }
  #about .s_1 .logo {
    margin: 10px auto 0;
    float: none;
    width: 171px;
  }
  #about .s_1 .img_area {
    width: 100%;
    height: auto;
    min-width: 100%;
    overflow: hidden;
    position: relative;
    margin-top: 36px;
  }
  #about .s_1 .img_area ul {
    width: 100%;
    overflow: hidden;
    position: relative;
    left: 0;
    margin-left: 0;
    top: 0;
    display: table;
  }
  #about .s_1 .img_area li {
    float: none;
    display: table-cell;
    width: 33.33%;
  }
  #about .s_2 {
    padding: 35px 0 50px;
  }
  #about .s_2 .txt1 {
    margin-top: 20px;
    font-size: 1.2em;
    line-height: 1.67;
    text-align: left;
  }
  #about .s_2 .btn_area {
    margin-top: 20px;
  }
  #about .s_2 .btn_area a {
    margin: 0 auto;
  }
  #about .s_2 .btn_area ul {
    margin: 0 -5px;
  }
  #about .s_2 .btn_area li {
    margin: 0 5px;
  }
}
@media screen and (max-width: 320px) {
  #about .concept .concept_ttl {
    width: 100%;
  }
  #about .s_2 .p_subttl {
    margin: 0 -10px;
  }
  #about .s_2 .btn_green_l {
    width: 120px;
  }
  #about .s_2 .btn_green_l span:before {
    margin-right: 6px;
  }
}
#event .p_head {
  padding-bottom: 46px;
}
#event .s_1 {
  padding-bottom: 130px;
}
#event .s_1 .table {
  width: 100%;
}
#event .s_1 .table .label,
#event .s_1 .table .line {
  border-bottom: 1px solid #eee;
}
#event .s_1 .table .label ul,
#event .s_1 .table .line ul {
  width: 100%;
  display: table;
  margin: 20px 0;
  background: url("event/img/event_table_line.gif") repeat-y center top;
}
#event .s_1 .table .box1,
#event .s_1 .table .box2,
#event .s_1 .table .box3 {
  display: table-cell;
  vertical-align: middle;
}
#event .s_1 .table .date,
#event .s_1 .table .pref,
#event .s_1 .table .sport,
#event .s_1 .table .athlete,
#event .s_1 .table .dl {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.4em;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  text-align: center;
}
#event .s_1 .table .date {
  width: 200px;
}
#event .s_1 .table .pref {
  width: 95px;
}
#event .s_1 .table .sport {
  width: 150px;
}
#event .s_1 .table .athlete {
  width: 155px;
  line-height: 1.32;
}
#event .s_1 .table .dl {
  width: 260px;
  font-size: 1.4em;
}
#event .s_1 .table .dl span {
  display: inline-block;
  vertical-align: middle;
}
#event .s_1 .table .dl .and:after {
  content: 'ã¨';
}
#event .s_1 .table .dl.coming {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  color: #999;
  line-height: 34px;
  height: 34px;
}
#event .s_1 .table .leaflet,
#event .s_1 .table .report {
  display: block;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  text-align: center;
  width: 200px;
  height: 34px;
  border-radius: 17px;
  color: #fff;
  line-height: 34px;
  text-decoration: none;
  margin: 0 auto;
}
#event .s_1 .table .leaflet span,
#event .s_1 .table .report span {
  display: inline-block;
  vertical-align: top;
}
#event .s_1 .table .leaflet:after,
#event .s_1 .table .report:after {
  content: '';
  width: 18px;
  height: 18px;
  background: url("event/img/ico_pdf.png") no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  margin-left: 6px;
}
#event .s_1 .table .leaflet {
  background: #90c31f;
}
#event .s_1 .table .leaflet:hover {
  background: #5f8014;
}
#event .s_1 .table .report {
  background: #e60012;
}
#event .s_1 .table .report:hover {
  background: #97000c;
}
#event .s_1 .table .label {
  border-bottom: none;
}
#event .s_1 .table .label ul {
  background: #e60012;
  color: #fff;
  height: 50px;
  line-height: 50px;
  margin: 0;
}
#event .s_1 .table .label .date,
#event .s_1 .table .label .pref,
#event .s_1 .table .label .sport,
#event .s_1 .table .label .athlete,
#event .s_1 .table .label .dl {
  font-size: 1.4em;
}

.ie8 #event .s_1 .table .leaflet:after,
.ie8 #event .s_1 .table .report:after {
  background: url("event/img/ico_pdf_ie8.png") no-repeat;
}

@media screen and (max-width: 600px) {
  #event .p_head {
    padding-bottom: 20px;
  }
  #event .s_1 {
    padding-bottom: 50px;
  }
  #event .s_1 .table {
    width: 100%;
  }
  #event .s_1 .table .label,
  #event .s_1 .table .line {
    border-bottom: 1px solid #eee;
  }
  #event .s_1 .table .label ul,
  #event .s_1 .table .line ul {
    width: 100%;
    display: table;
    margin: 16px 0;
    background: none;
  }
  #event .s_1 .table .box1,
  #event .s_1 .table .box2,
  #event .s_1 .table .box3 {
    display: table-cell;
    vertical-align: middle;
  }
  #event .s_1 .table .box1,
  #event .s_1 .table .box2 {
    border-right: 1px solid #eee;
  }
  #event .s_1 .table .box1 {
    width: 40%;
  }
  #event .s_1 .table .box2 {
    width: 30%;
  }
  #event .s_1 .table .box3 {
    width: 30%;
  }
  #event .s_1 .table .date,
  #event .s_1 .table .pref,
  #event .s_1 .table .sport,
  #event .s_1 .table .athlete,
  #event .s_1 .table .dl {
    width: auto;
    display: block;
    font-size: 1em;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    text-align: center;
  }
  #event .s_1 .table .date,
  #event .s_1 .table .sport {
    margin-bottom: 5px;
  }
  #event .s_1 .table .athlete {
    line-height: 1.36;
  }
  #event .s_1 .table .dl {
    font-size: 1em;
  }
  #event .s_1 .table .dl .and:after {
    content: '/';
    display: inline-block;
    margin: 0 2px;
  }
  #event .s_1 .table .dl.coming {
    line-height: 30px;
    height: 30px;
  }
  #event .s_1 .table .leaflet,
  #event .s_1 .table .report {
    display: block;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    text-align: center;
    width: auto;
    height: 30px;
    border-radius: 15px;
    color: #fff;
    line-height: 30px;
    text-decoration: none;
    margin: 0 10px;
  }
  #event .s_1 .table .leaflet span.pc,
  #event .s_1 .table .report span.pc {
    display: none;
  }
  #event .s_1 .table .leaflet:after,
  #event .s_1 .table .report:after {
    content: '';
    width: 12px;
    height: 12px;
    background: url("event/img/ico_pdf.png") no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-left: 2px;
    margin-top: 2px;
  }
  #event .s_1 .table .leaflet {
    background: #90c31f;
  }
  #event .s_1 .table .leaflet:hover {
    background: #90c31f;
  }
  #event .s_1 .table .report {
    background: #e60012;
  }
  #event .s_1 .table .report:hover {
    background: #e60012;
  }
  #event .s_1 .table .label {
    border-bottom: none;
  }
  #event .s_1 .table .label .box1,
  #event .s_1 .table .label .box2 {
    border-right: 1px solid #e60012;
  }
  #event .s_1 .table .label ul {
    background: #e60012;
    color: #fff;
    height: 35px;
    line-height: 35px;
    margin: 0;
  }
  #event .s_1 .table .label .date,
  #event .s_1 .table .label .pref,
  #event .s_1 .table .label .sport,
  #event .s_1 .table .label .athlete,
  #event .s_1 .table .label .dl {
    font-size: 1em;
    display: inline-block;
    margin-bottom: 0;
  }
  #event .s_1 .table .label .date:after,
  #event .s_1 .table .label .sport:after {
    content: '/';
    display: inline-block;
    margin: 0 2px;
  }
}
#family .p_head {
  padding-bottom: 70px;
}
#family .p_head .img {
  margin-bottom: 24px;
}
#family .p_head .img_online {
  margin: 50px -20px;
}
#family .p_head .anchor {
  margin-top: 40px;
}
#family .p_head .anchor li {
  display: inline-block;
  vertical-align: top;
  font-size: 1.4em;
  margin-right: 30px;
}
#family .p_head .anchor li a {
  display: block;
  padding-left: 22px;
  background-image: url("img/arr_anc_re.png");
  background-image: url("img/arr_anc_re_ie8.png") \9 ;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  height: 14px;
  line-height: 14px;
}
#family .s_1 .inr {
  border-top: 1px solid #eee;
  padding: 70px 0 80px;
  position: relative;
}
#family .s_1 h3 {
  width: 238px;
  margin-bottom: 40px;
}
#family .s_1 .note {
  position: absolute;
  height: 30px;
  text-align: right;
  top: 67px;
  right: 0;
  display: table;
}
#family .s_1 .note li {
  display: table-cell;
  vertical-align: top;
  font-size: 1.2rem;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  line-height: 30px;
}
#family .s_1 .note li + li {
  padding-left: 29px;
}
#family .s_1 .note img {
  height: 30px;
  width: auto;
  margin-right: 10px;
}
#family .s_1 .table {
  width: 100%;
}
#family .s_1 .table .label,
#family .s_1 .table .line {
  border-bottom: 1px solid #eee;
}
#family .s_1 .table .label ul,
#family .s_1 .table .line ul {
  width: 100%;
  display: table;
  margin: 20px 0;
  background: url("family/img/event_table_line.gif") repeat-y center top/860px 1px;
}
#family .s_1 .table .box1,
#family .s_1 .table .box2,
#family .s_1 .table .box3 {
  display: table-cell;
  vertical-align: middle;
  position: relative;
}
#family .s_1 .table .date,
#family .s_1 .table .pref,
#family .s_1 .table .sport,
#family .s_1 .table .athlete,
#family .s_1 .table .dl {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.4em;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#family .s_1 .table .date {
  width: 230px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding-left: 53px;
  text-align: left;
}
#family .s_1 .table .date.online:before {
  content: '';
  width: 44px;
  height: 24px;
  background: url("family/img/family_ico_online.png") no-repeat left center/44px 24px;
  position: absolute;
  left: 0;
  top: 5px;
}
#family .s_1 .table .pref {
  width: 115px;
  text-align: center;
}
#family .s_1 .table .sport {
  width: 150px;
  text-align: center;
}
#family .s_1 .table .athlete {
  width: 150px;
  line-height: 1.32;
  text-align: center;
}
#family .s_1 .table .dl {
  width: 200px;
  font-size: 1.4em;
  text-align: center;
}
#family .s_1 .table .dl span {
  display: inline-block;
  vertical-align: middle;
}
#family .s_1 .table .dl .and:after {
  content: 'ã¨';
}
#family .s_1 .table .dl.coming {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  color: #999;
  line-height: 34px;
  height: 34px;
}
#family .s_1 .table .dl a {
  display: block;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  text-align: center;
  width: 160px;
  height: 34px;
  border-radius: 17px;
  color: #fff;
  line-height: 34px;
  text-decoration: none;
  margin: 0 auto;
  background: #90c31f;
}
#family .s_1 .table .dl a:hover {
  background: #5f8014;
}
#family .s_1 .table .dl a.pdf:after {
  content: '';
  width: 18px;
  height: 18px;
  background: url("family/img/ico_pdf.png") no-repeat;
  background: url("family/img/ico_pdf_ie8.png") no-repeat\9 ;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  margin-left: 6px;
}
#family .s_1 .table .dl a:not(.pdf):before {
  content: '';
  width: 14px;
  height: 14px;
  background: url("img/arr_wh_28.png") no-repeat 0 0/contain;
  display: inline-block;
  vertical-align: top;
  margin: 10px 8px 0 0;
}
#family .s_1 .table .label {
  border-bottom: none;
}
#family .s_1 .table .label ul {
  background: #e60012;
  color: #fff;
  height: 50px;
  line-height: 50px;
  margin: 0;
}
#family .s_1 .table .label .date {
  text-align: center;
  padding-left: 0;
}
#family .s_1 .table .label .date,
#family .s_1 .table .label .pref,
#family .s_1 .table .label .sport,
#family .s_1 .table .label .athlete,
#family .s_1 .table .label .dl {
  font-size: 1.4em;
}
#family .s_1 .table .none {
  padding: 32px 0 30px;
  border-bottom: 1px solid #eee;
  text-align: center;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4rem;
}
#family .s_1 .box_attention {
  margin-top: 60px;
  background: #eee;
  padding: 45px 50px 50px;
}
#family .s_1 .box_attention h4 {
  text-align: center;
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 2.4rem;
}
#family .s_1 .box_attention h4 + p {
  margin-top: 20px;
}
#family .s_1 .box_attention p {
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.75;
}
#family .s_1 .box_attention p + p {
  margin-top: 0.88em;
}
#family .s_2 .inr {
  border-top: 1px solid #eee;
  padding: 70px 0 60px;
}
#family .s_2 h3 {
  width: 238px;
  margin-bottom: 40px;
}
#family .s_2 .sort .label {
  background: #e60012;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  display: inline-block;
  width: 132px;
  height: 30px;
  text-align: center;
  line-height: 30px;
}
#family .s_2 .sort ul {
  border: 1px solid #eee;
  padding: 25px 10px 10px 30px;
}
#family .s_2 .sort li {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
  margin-bottom: 15px;
}
#family .s_2 .sort li.cu a {
  text-decoration: none;
  color: #e60012;
}
#family .s_2 .report_list {
  width: 860px;
  overflow: hidden;
}
#family .s_2 .report_list ul {
  margin: 0 -28px 0 -27px;
  width: 915px;
}
#family .s_2 .report_list li {
  margin-top: 40px;
  float: left;
  width: 250px;
  height: 317px;
  padding: 0 27px;
  border-right: 1px solid #eee;
}
#family .s_2 .report_list .sport {
  margin-top: 10px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
}
#family .s_2 .report_list .sport a {
  color: #e60012;
}
#family .s_2 .report_list .date_place {
  margin-top: 12px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
}
#family .s_2 .report_list .name {
  margin-top: 10px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
}
#family .s_2 .report_list .dl {
  margin-top: 18px;
  text-align: center;
}
#family .s_2 .report_list .dl a {
  display: block;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  text-align: center;
  width: 200px;
  height: 34px;
  border-radius: 17px;
  color: #fff;
  font-size: 1.4em;
  line-height: 34px;
  text-decoration: none;
  margin: 0 auto;
  background: #e60012;
}
#family .s_2 .report_list .dl a:hover {
  background: #97000c;
}
#family .s_2 .report_list .dl a span {
  display: inline-block;
  vertical-align: top;
}
#family .s_2 .report_list .dl a:before {
  content: '';
  width: 14px;
  height: 14px;
  background: url("img/arr_wh_28.png") no-repeat 0 0/contain;
  display: inline-block;
  vertical-align: top;
  margin: 10px 6px 0 0;
}
#family .s_2 .report_list .dl a.pdf:after {
  content: '';
  width: 18px;
  height: 18px;
  background: url("family/img/ico_pdf.png") no-repeat;
  background: url("family/img/ico_pdf_ie8.png") no-repeat\9 ;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  margin-left: 6px;
}
#family .s_3 {
  padding-bottom: 90px;
}
#family .s_3 .content {
  border: 1px solid #eee;
  position: relative;
  margin: 5px -30px 0;
  padding: 80px 80px 60px;
  text-align: center;
}
#family .s_3 .content:before {
  content: '';
  background: url("family/img/family_hd_online.png") no-repeat 0 0/contain;
  width: 240px;
  height: 165px;
  position: absolute;
  top: -129px;
  left: 50%;
  margin-left: -120px;
}
#family .s_3 .online_ttl {
  width: 340px;
  margin: 0 auto 25px;
}
#family .s_3 h2 {
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 3rem;
  line-height: 1.47;
  border-bottom: 1px solid #eee;
  padding-bottom: 45px;
}
#family .s_3 .report {
  margin-top: 90px;
  border: 1px solid #e60012;
  padding: 65px 52px;
  position: relative;
  text-align: left;
}
#family .s_3 .report .label {
  width: 135px;
  height: 74px;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  top: -45px;
  left: 50%;
  margin-left: -67px;
  background: url("family/img/family_report.png") no-repeat 0 0/135px 74px;
}
#family .s_3 .report .img1 img {
  width: 100%;
  height: auto;
}
#family .s_3 .report .img1.c2 img {
  width: 324px;
}
#family .s_3 .report .img1.c2 img + img {
  margin-left: 4px;
}
#family .s_3 .report .txt {
  margin-top: 25px;
  font-size: 1.6rem;
  line-height: 1.75;
}
#family .s_3 .report .txt.w365_r {
  width: 365px;
  display: inline-block;
  vertical-align: top;
  margin-left: 32px;
}
#family .s_3 .report .img2 {
  margin-top: 30px;
  display: inline-block;
  vertical-align: top;
}
#family .s_3 .report .img2 img {
  width: 100%;
  height: auto;
}
#family .s_3 .report .img2.w250_l {
  width: 250px;
}
#family .s_3 .report .cap {
  font-size: 1rem;
  margin-top: 6px;
}
#family .s_3 .report + .teacher {
  margin-top: 75px;
}
#family .s_3 .teacher {
  margin-top: 60px;
  position: relative;
  padding-left: 260px;
  text-align: left;
  min-height: 220px;
  margin-bottom: 40px;
}
#family .s_3 .teacher .img {
  width: 220px;
  position: absolute;
  left: 0;
  top: 0;
}
#family .s_3 .teacher .bal {
  border: 1px solid #90c31f;
  padding: 40px 35px;
  position: relative;
}
#family .s_3 .teacher .bal:before, #family .s_3 .teacher .bal:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 13px 8px 0;
  display: block;
  position: absolute;
  top: 110px;
  margin-top: -8px;
}
#family .s_3 .teacher .bal:before {
  border-color: transparent #90c31f transparent transparent;
  left: -13px;
}
#family .s_3 .teacher .bal:after {
  border-color: transparent #fff transparent transparent;
  z-index: 2;
  left: -11px;
}
#family .s_3 .teacher .label {
  width: 99px;
  height: 48px;
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  top: -26px;
  left: -20px;
  background: url("family/img/family_teacher.png") no-repeat 0 0/99px;
}
#family .s_3 .teacher .name {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 2.4rem;
}
#family .s_3 .teacher .name span {
  font-size: 1.8rem;
}
#family .s_3 .teacher .notes {
  margin-top: 15px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  color: #e60012;
  font-size: 1.2rem;
}
#family .s_3 .teacher .profile {
  margin-top: 15px;
  font-size: 1.4rem;
  line-height: 1.75;
}
#family .s_3 .lead {
  font-size: 1.6rem;
  line-height: 1.75;
  text-align: left;
}
#family .s_3 .table {
  margin: 40px 0 0;
  border-top: 1px solid #eee;
}
#family .s_3 .table a {
  color: #e60012;
}
#family .s_3 .table .tr {
  width: 100%;
  border-bottom: 1px solid #eee;
  text-align: left;
}
#family .s_3 .table .tr.line {
  padding-top: 30px;
  padding-bottom: 30px;
}
#family .s_3 .table .tr.line .th {
  margin-bottom: 20px;
}
#family .s_3 .table .tr:not(.line) {
  display: table;
}
#family .s_3 .table .tr:not(.line) .th, #family .s_3 .table .tr:not(.line) .td {
  display: table-cell;
  vertical-align: top;
  padding-top: 30px;
  padding-bottom: 30px;
}
#family .s_3 .table .tr:not(.line) .th {
  width: 145px;
}
#family .s_3 .table .th {
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4rem;
  line-height: 1.29;
}
#family .s_3 .table .td {
  font-size: 1.6rem;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  line-height: 1.13;
  position: relative;
}
#family .s_3 .table .date {
  font-size: 1.8rem;
  line-height: 1;
  display: inline-block;
  vertical-align: top;
  margin-right: 15px;
}
#family .s_3 .table .time {
  display: inline-block;
  vertical-align: top;
}
#family .s_3 .table .time .label {
  display: inline-block;
  vertical-align: top;
  background: #90c31f;
  border-radius: 4px;
  color: #fff;
  padding: 0 10px;
  font-size: 1.4rem;
  line-height: 1.71;
  margin: -3px 8px -3px 0;
}
#family .s_3 .table .time + .time {
  margin-left: 20px;
}
#family .s_3 .table .inline {
  display: inline-block;
}
#family .s_3 .table .attention {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5;
  padding-left: 23px;
  position: relative;
}
#family .s_3 .table .attention:before {
  content: '';
  display: block;
  position: absolute;
  width: 16px;
  height: 16px;
  top: 2px;
  left: 0;
  background: url("family/img/ico_attention.png") no-repeat 0 0/16px;
}
#family .s_3 .table p.inline + .attention {
  display: inline-block;
  margin-left: 18px;
}
#family .s_3 .table p:not(.inline) + .attention,
#family .s_3 .table ul + .attention {
  margin-top: 18px;
}
#family .s_3 .table .note {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  font-size: 1.4rem;
}
#family .s_3 .table .bal {
  position: absolute;
  top: -68px;
  right: -45px;
  width: 158px;
}
#family .s_3 .table .flow1 {
  margin-bottom: -20px;
}
#family .s_3 .table .flow1 li {
  display: inline-block;
  vertical-align: top;
  padding-left: 30px;
  position: relative;
  line-height: 1;
  margin-bottom: 20px;
  margin-right: 18px;
}
#family .s_3 .table .flow1 .num {
  position: absolute;
  font-size: 14px;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  color: #fff;
  background: #90c31f;
  border-radius: 50%;
  left: 0;
  top: 0.5em;
  margin-top: -12px;
}
#family .s_3 .table .flow2 {
  display: table;
  border-collapse: separate;
  border-spacing: 40px 0;
  width: 840px;
  margin: 0 -40px;
}
#family .s_3 .table .flow2 li {
  display: table-cell;
  vertical-align: middle;
  width: 160px;
  height: 80px;
  position: relative;
  text-align: center;
  border: 2px solid #90c31f;
  border-radius: 5px;
}
#family .s_3 .table .flow2 li + li {
  margin-left: 40px;
}
#family .s_3 .table .flow2 li + li:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 12px;
  border-color: transparent transparent transparent #90c31f;
  position: absolute;
  left: -26px;
  top: 33px;
}
#family .s_3 .table .flow2 .note {
  margin-top: 4px;
  display: block;
  font-size: 1.1rem;
  line-height: 1.3;
}
#family .s_3 .entry {
  margin: 50px 0 0;
}
#family .s_3 .entry .txt1 {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6rem;
}
#family .s_3 .entry .txt2 {
  margin-top: 18px;
  font-size: 1.4rem;
}
#family .s_3 .entry .txt2 a {
  color: #e60012;
}
#family .s_3 .entry .deadline {
  margin-top: 20px;
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.8rem;
}
#family .s_3 .entry .deadline .large {
  font-size: 2.6rem;
}
#family .s_3 .entry .deadline .label {
  display: inline-block;
  vertical-align: top;
  margin-top: 6px;
  margin-right: 10px;
  background: #e60012;
  border-radius: 5px;
  font-size: 1.2rem;
  color: #fff;
  padding: 4px 7px 6px;
}
#family .s_3 .entry .btn {
  margin: 25px auto 0;
  width: 316px;
  height: 56px;
  display: block;
  text-decoration: none;
  color: #fff;
  text-align: center;
  position: relative;
}
#family .s_3 .entry .btn:before {
  content: '';
  width: 316px;
  height: 56px;
  position: absolute;
  left: 0;
  top: 0;
  background: #e60012;
  box-shadow: 5px 4px #97000c;
  border-radius: 28px;
  z-index: 2;
}
#family .s_3 .entry .btn span {
  display: inline-block;
  margin: 0 auto;
  vertical-align: top;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 18px;
  height: 18px;
  padding: 19px 0;
  position: relative;
  z-index: 3;
}
#family .s_3 .entry .btn span:before {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("img/arr_wh.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}
#family .s_3 .entry .btn:hover {
  width: 316px;
  padding-left: 5px;
}
#family .s_3 .entry .btn:hover span {
  padding: 23px 0 0;
}
#family .s_3 .entry .btn:hover:before {
  background: #97000c;
  box-shadow: none;
  top: 4px;
  left: 5px;
}
#family .s_3 .contact {
  background: #eee;
  margin: 45px 0 0;
  padding: 40px 40px 35px;
  font-size: 1.6rem;
  line-height: 1.75;
}
#family .s_3 .contact .label {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  background: #90c31f;
  border-radius: 5px;
  color: #fff;
  font-size: 12px;
  width: 110px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  position: absolute;
  top: 0;
  left: 0;
}
#family .s_3 .contact .name {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#family .s_3 .contact_inr {
  display: inline-block;
  margin: 0 auto;
  text-align: left;
  padding-left: 130px;
  position: relative;
}
#family .s_3 .sponsor {
  margin-top: 34px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4rem;
}
#family .s_3 .btn_green_l {
  margin: 60px auto 0;
}

@media screen and (max-width: 600px) {
  #family .p_head {
    width: 100%;
    overflow: hidden;
    padding-bottom: 20px;
  }
  #family .p_head .img {
    margin: 0 -12.5% 20px;
  }
  #family .p_head .img_online {
    margin: 30px -8px 15px;
  }
  #family .p_head .anchor {
    margin-top: 22px;
    text-align: left;
  }
  #family .p_head .anchor li {
    display: block;
    font-size: 1.2em;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #family .p_head .anchor li a {
    display: block;
    padding-left: 22px;
  }
  #family .s_1 .inr {
    border-top: 1px solid #eee;
    padding: 30px 0;
  }
  #family .s_1 h3 {
    width: 157px;
    margin: 0 auto 20px;
  }
  #family .s_1 .note {
    position: relative;
    height: 24px;
    text-align: center;
    top: 0;
    margin: 0 auto 16px;
  }
  #family .s_1 .note li {
    font-size: 1rem;
    line-height: 24px;
  }
  #family .s_1 .note li + li {
    padding-left: 20px;
  }
  #family .s_1 .note img {
    height: 24px;
    margin-right: 9px;
  }
  #family .s_1 .table {
    width: 100%;
  }
  #family .s_1 .table .label,
  #family .s_1 .table .line {
    border-bottom: 1px solid #eee;
  }
  #family .s_1 .table .label ul,
  #family .s_1 .table .line ul {
    width: 100%;
    display: table;
    margin: 16px 0;
    background: none;
  }
  #family .s_1 .table .box1,
  #family .s_1 .table .box2,
  #family .s_1 .table .box3 {
    display: table-cell;
    vertical-align: middle;
  }
  #family .s_1 .table .box1,
  #family .s_1 .table .box2 {
    border-right: 1px solid #eee;
  }
  #family .s_1 .table .box1 {
    width: 42%;
  }
  #family .s_1 .table .box2 {
    width: 28%;
  }
  #family .s_1 .table .box3 {
    width: 30%;
  }
  #family .s_1 .table .date,
  #family .s_1 .table .pref,
  #family .s_1 .table .sport,
  #family .s_1 .table .athlete,
  #family .s_1 .table .dl {
    width: auto;
    display: block;
    font-size: 1em;
  }
  #family .s_1 .table .date {
    padding-left: 8.8vw;
  }
  #family .s_1 .table .date.online:before {
    width: 9.9vw;
    height: 100%;
    background: url("family/img/family_ico_online.png") no-repeat 0 center/9.9vw;
    left: -6px;
    top: 0;
  }
  #family .s_1 .table .pref {
    text-align: left;
    padding-left: 8.8vw;
  }
  #family .s_1 .table .date,
  #family .s_1 .table .sport {
    margin-bottom: 5px;
  }
  #family .s_1 .table .athlete {
    line-height: 1.36;
  }
  #family .s_1 .table .dl {
    font-size: 1em;
  }
  #family .s_1 .table .dl .and:after {
    content: '/';
    display: inline-block;
    margin: 0 2px;
  }
  #family .s_1 .table .dl.coming {
    line-height: 30px;
    height: 30px;
  }
  #family .s_1 .table .dl a {
    display: block;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    text-align: center;
    width: auto;
    height: 30px;
    border-radius: 15px;
    color: #fff;
    line-height: 30px;
    text-decoration: none;
    margin: 0 10px;
    background: #90c31f;
  }
  #family .s_1 .table .dl a:hover {
    background: #90c31f;
  }
  #family .s_1 .table .dl a.pdf:after {
    content: '';
    width: 12px;
    height: 12px;
    background: url("family/img/ico_pdf.png") no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: middle;
    margin-left: 2px;
    margin-top: 2px;
  }
  #family .s_1 .table .dl a:not(.pdf):before {
    display: none;
  }
  #family .s_1 .table .label {
    border-bottom: none;
  }
  #family .s_1 .table .label .box1,
  #family .s_1 .table .label .box2 {
    border-right: 1px solid #e60012;
  }
  #family .s_1 .table .label ul {
    background: #e60012;
    color: #fff;
    height: 35px;
    line-height: 35px;
    margin: 0;
  }
  #family .s_1 .table .label .date,
  #family .s_1 .table .label .pref,
  #family .s_1 .table .label .sport,
  #family .s_1 .table .label .athlete,
  #family .s_1 .table .label .dl {
    font-size: 1em;
    display: inline-block;
    margin-bottom: 0;
  }
  #family .s_1 .table .label .date,
  #family .s_1 .table .label .pref {
    padding-left: 0;
  }
  #family .s_1 .table .label .date:after,
  #family .s_1 .table .label .sport:after {
    content: '/';
    display: inline-block;
    margin: 0 2px;
  }
  #family .s_1 .table .none {
    font-size: 1.3rem;
  }
  #family .s_1 .box_attention {
    margin-top: 25px;
    padding: 25px 25px 20px;
  }
  #family .s_1 .box_attention h4 {
    font-size: 1.4rem;
  }
  #family .s_1 .box_attention h4 + p {
    margin-top: 10px;
  }
  #family .s_1 .box_attention p {
    font-size: 1.2rem;
  }
  #family .s_2 .inr {
    border-top: 1px solid #eee;
    padding: 30px 0;
  }
  #family .s_2 h3 {
    width: 151px;
    margin-bottom: 20px;
  }
  #family .s_2 .sort {
    text-align: left;
  }
  #family .s_2 .sort .label {
    font-size: 1em;
    width: 87px;
    height: 20px;
    line-height: 20px;
  }
  #family .s_2 .sort ul {
    padding: 15px 5px 5px 15px;
  }
  #family .s_2 .sort li {
    font-size: 1.1em;
    margin-right: 10px;
    margin-bottom: 10px;
  }
  #family .s_2 .report_list {
    width: 100%;
    overflow: hidden;
    text-align: left;
  }
  #family .s_2 .report_list ul {
    margin: 0;
    width: auto;
  }
  #family .s_2 .report_list li {
    margin-top: 0;
    float: none;
    width: 100%;
    height: auto;
    padding: 20px 0;
    border-right: none;
    border-bottom: 1px solid #eee;
    display: table;
  }
  #family .s_2 .report_list li:last-child {
    border-bottom: none;
  }
  #family .s_2 .report_list .img,
  #family .s_2 .report_list .txt {
    display: table-cell;
    vertical-align: top;
  }
  #family .s_2 .report_list .img {
    width: 125px;
  }
  #family .s_2 .report_list .txt {
    padding-left: 10px;
  }
  #family .s_2 .report_list .sport {
    margin-top: 0;
    font-size: 1.1em;
  }
  #family .s_2 .report_list .date_place {
    margin-top: 10px;
    font-size: 1em;
    line-height: 1.2;
  }
  #family .s_2 .report_list .name {
    margin-top: 5px;
    font-size: 1.2em;
    line-height: 1.2;
  }
  #family .s_2 .report_list .dl {
    margin-top: 8px;
    text-align: left;
    width: auto;
    display: block;
    font-size: 1em;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  }
  #family .s_2 .report_list .dl a {
    display: inline-block;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    text-align: center;
    width: 110px;
    height: 30px;
    border-radius: 15px;
    color: #fff;
    line-height: 30px;
    text-decoration: none;
    margin: 0;
    background: #e60012;
    padding: 0 15px;
    font-size: 1em;
  }
  #family .s_2 .report_list .dl a:hover {
    background: #e60012;
  }
  #family .s_2 .report_list .dl a:before {
    width: 12px;
    height: 12px;
    margin: 9px 4px 0 0;
  }
  #family .s_2 .report_list .dl a.pdf:after {
    content: '';
    width: 12px;
    height: 12px;
    background: url("family/img/ico_pdf.png") no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: top;
    margin-left: 2px;
    margin-top: 9px;
  }
  #family .s_3 {
    padding-bottom: 45px;
  }
  #family .s_3 .content {
    margin: 50px -3% 0;
    padding: 45px 22px 28px;
    text-align: left;
  }
  #family .s_3 .content:before {
    background: url("family/img/family_hd_online_sp.png") no-repeat 0 0/contain;
    width: 152px;
    height: 80px;
    top: -57px;
    margin-left: -76px;
  }
  #family .s_3 .online_ttl {
    width: 184px;
    margin: 0 auto 10px;
  }
  #family .s_3 h2 {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-bottom: 26px;
    text-align: center;
  }
  #family .s_3 .report {
    margin-top: 55px;
    padding: 37px 20px 25px;
  }
  #family .s_3 .report .label {
    width: 90px;
    height: 50px;
    top: -30px;
    margin-left: -45px;
    background: url("family/img/family_report.png") no-repeat center top/90px;
  }
  #family .s_3 .report .img1 {
    text-align: center;
  }
  #family .s_3 .report .img1.c2 img {
    width: 100%;
    max-width: 324px;
  }
  #family .s_3 .report .img1.c2 img + img {
    margin-left: auto;
    margin-top: 4px;
  }
  #family .s_3 .report .txt {
    margin-top: 20px;
    font-size: 1.3rem;
    width: 100% !important;
    margin-left: 0 !important;
  }
  #family .s_3 .report .img2 {
    margin-top: 20px;
    display: inline-block;
    vertical-align: top;
    width: 100% !important;
    text-align: center;
  }
  #family .s_3 .report .img2.w250_l img {
    max-width: 250px;
  }
  #family .s_3 .report + .teacher {
    margin-top: 30px;
  }
  #family .s_3 .teacher {
    margin-top: 20px;
    padding-left: 0;
    min-height: auto;
    margin-bottom: 20px;
  }
  #family .s_3 .teacher .img {
    width: 110px;
    position: relative;
    margin: 0 auto 24px;
  }
  #family .s_3 .teacher .bal {
    padding: 30px 20px 20px;
    text-align: left;
  }
  #family .s_3 .teacher .bal:before, #family .s_3 .teacher .bal:after {
    border-width: 0 8px 13px 8px;
    top: 0;
    margin-top: 0;
    left: 50%;
    margin-left: -8px;
  }
  #family .s_3 .teacher .bal:before {
    border-color: transparent transparent #90c31f transparent;
    left: 50%;
    top: -13px;
  }
  #family .s_3 .teacher .bal:after {
    border-color: transparent transparent #fff transparent;
    left: 50%;
    top: -11px;
  }
  #family .s_3 .teacher .label {
    width: 70px;
    height: 34px;
    top: -21px;
    left: 14px;
    background: url("family/img/family_teacher_sp.png") no-repeat 0 0/70px;
  }
  #family .s_3 .teacher .name {
    font-size: 1.8rem;
  }
  #family .s_3 .teacher .name span {
    font-size: 1.4rem;
  }
  #family .s_3 .teacher .notes {
    margin-top: 10px;
  }
  #family .s_3 .teacher .profile {
    margin-top: 10px;
    font-size: 1.2rem;
  }
  #family .s_3 .lead {
    font-size: 1.3rem;
  }
  #family .s_3 .table {
    margin: 20px 0 0;
  }
  #family .s_3 .table .tr.line {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #family .s_3 .table .tr.line .th {
    margin-bottom: 15px;
  }
  #family .s_3 .table .tr:not(.line) {
    display: block;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #family .s_3 .table .tr:not(.line) .th, #family .s_3 .table .tr:not(.line) .td {
    display: block;
    padding-top: 0;
    padding-bottom: 0;
  }
  #family .s_3 .table .tr:not(.line) .th {
    width: auto;
    margin-bottom: 10px;
  }
  #family .s_3 .table .th {
    font-size: 1.2rem;
    line-height: 1;
  }
  #family .s_3 .table .td {
    font-size: 1.4rem;
    line-height: 1.75;
  }
  #family .s_3 .table .date {
    font-size: 1.6rem;
    display: block;
    margin-right: 0;
    margin-bottom: 6px;
  }
  #family .s_3 .table .time .label {
    padding: 0 5px;
    font-size: 1rem;
    line-height: 2;
    margin: 2px 4px 2px 0;
  }
  #family .s_3 .table .time + .time {
    margin-left: 6px;
  }
  #family .s_3 .table .inline {
    display: block;
  }
  #family .s_3 .table .attention {
    word-break: break-all;
  }
  #family .s_3 .table p.inline + .attention {
    display: block;
    margin-left: 0;
    margin-top: 5px;
  }
  #family .s_3 .table p:not(.inline) + .attention {
    margin-top: 5px;
  }
  #family .s_3 .table ul + .attention {
    margin-top: 15px;
  }
  #family .s_3 .table .note {
    font-size: 1.2rem;
  }
  #family .s_3 .table .bal {
    position: absolute;
    top: -80px;
    right: -30px;
    width: 95px;
  }
  #family .s_3 .table .flow1 {
    margin-bottom: 0;
  }
  #family .s_3 .table .flow1 li {
    display: block;
    line-height: 1.5;
    margin-bottom: 0;
    margin-right: 0;
  }
  #family .s_3 .table .flow1 li + li {
    margin-top: 5px;
  }
  #family .s_3 .table .flow1 .num {
    font-size: 12px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    top: 0.75em;
    margin-top: -10px;
  }
  #family .s_3 .table .flow2 {
    display: block;
    border-spacing: 0;
    width: auto;
    margin: 0;
  }
  #family .s_3 .table .flow2 li {
    display: block;
    width: auto;
    height: auto;
    text-align: center;
    padding: 12px 0;
    line-height: 1;
  }
  #family .s_3 .table .flow2 li + li {
    margin-left: 0;
    margin-top: 22px;
  }
  #family .s_3 .table .flow2 li + li:before {
    border-width: 12px 7px 0 7px;
    border-color: #90c31f transparent transparent transparent;
    left: 50%;
    margin-left: -7px;
    top: -18px;
  }
  #family .s_3 .table .flow2 .note {
    margin-top: 6px;
    font-size: 1rem;
    line-height: 1;
  }
  #family .s_3 .entry {
    margin: 30px 0 0;
    text-align: center;
  }
  #family .s_3 .entry .txt1 {
    font-size: 1.4rem;
  }
  #family .s_3 .entry .txt2 {
    margin-top: 10px;
    font-size: 1.2rem;
    line-height: 1.75;
  }
  #family .s_3 .entry .deadline {
    margin-top: 10px;
    font-size: 1.5rem;
  }
  #family .s_3 .entry .deadline .large {
    font-size: 2.1rem;
  }
  #family .s_3 .entry .deadline .label {
    margin-top: 2px;
    margin-right: 6px;
    font-size: 1rem;
    padding: 4px 5px 5px;
  }
  #family .s_3 .entry .btn {
    margin: 20px auto 0;
    width: 100%;
    max-width: 316px;
  }
  #family .s_3 .entry .btn:before {
    width: 100%;
    max-width: 316px;
  }
  #family .s_3 .entry .btn:hover {
    width: 100%;
    padding-left: 0;
  }
  #family .s_3 .entry .btn:hover span {
    padding: 19px 0;
  }
  #family .s_3 .entry .btn:hover:before {
    background: #e60012;
    box-shadow: 5px 4px #97000c;
    top: 0;
    left: 0;
  }
  #family .s_3 .contact {
    margin: 30px 0 0;
    padding: 18px 10px 20px;
    font-size: 1.2rem;
  }
  #family .s_3 .contact .label {
    font-size: 10px;
    width: 92px;
    height: 20px;
    line-height: 20px;
    position: relative;
    margin: 0 auto 6px;
  }
  #family .s_3 .contact .name {
    font-size: 1.4rem;
  }
  #family .s_3 .contact_inr {
    display: block;
    margin: 0 auto;
    text-align: center;
    padding-left: 0;
  }
  #family .s_3 .sponsor {
    margin-top: 20px;
    font-size: 1.2rem;
    text-align: center;
  }
  #family .s_3 .btn_green_l {
    margin: 30px auto 0;
    width: 192px;
  }
  #family .s_3 .btn_green_l:hover {
    width: 192px;
  }
}
@media screen and (max-width: 320px) {
  #family .p_head .img {
    margin: 0 -5.56% 20px;
  }
}
#run .p_head {
  padding: 0 0 70px;
}
#run .p_head .img {
  margin-bottom: 24px;
}
#run .p_head .anchor {
  margin-top: 40px;
}
#run .p_head .anchor li {
  display: inline-block;
  vertical-align: top;
  font-size: 1.4em;
  margin-right: 30px;
}
#run .p_head .anchor li a {
  display: block;
  padding-left: 22px;
  background-image: url("img/arr_anc_re.png");
  background-image: url("img/arr_anc_re_ie8.png") \9 ;
  background-repeat: no-repeat;
  background-size: 14px 14px;
  height: 14px;
  line-height: 14px;
}
#run .coming {
  text-align: left;
}
#run .coming h3 {
  width: 238px;
  margin-bottom: 28px;
}
#run .coming li {
  width: 100%;
  border: 1px solid #eee;
  margin: 0 0 20px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding: 39px;
  cursor: pointer;
}
#run .coming li:hover a {
  background: #5f8014;
}
#run .coming .img {
  width: 340px;
  display: inline-block;
  vertical-align: top;
}
#run .coming .txt {
  display: inline-block;
  vertical-align: top;
  margin-left: 28px;
}
#run .coming .ttl {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  color: #e60012;
  font-size: 2em;
}
#run .coming .ttl span {
  display: block;
  font-size: 12px;
  margin-bottom: 12px;
}
#run .coming .notes {
  margin-top: 16px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 1.71;
}
#run .coming .btn {
  margin-top: 25px;
}
#run .s_1 .coming {
  border-top: 1px solid #eee;
  padding: 70px 0 50px;
}
#run .s_1 .content {
  border: 1px solid #eee;
  position: relative;
  margin: 0 -30px;
  padding: 80px;
  text-align: center;
}
#run .s_1 .content .tag {
  background-color: #90c31f;
  color: #fff;
  position: absolute;
  top: -24px;
  left: 50%;
  margin-left: -55px;
  z-index: 2;
  width: 110px;
  height: 48px;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
  font-style: italic;
  font-size: 22px;
  text-align: center;
  line-height: 44px;
}
#run .s_1 .content .tag:before {
  content: '';
  position: absolute;
  top: -18px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 18px 110px;
  border-color: transparent transparent #90c31f transparent;
}
#run .s_1 .content .ttl {
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 3em;
}
#run .s_1 .content .ttl .small {
  display: block;
  margin-bottom: 20px;
  font-size: 0.6em;
}
#run .s_1 .content .notes {
  margin-top: 20px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.3em;
  width: 100%;
  border-bottom: 1px solid #eee;
  padding-bottom: 30px;
}
#run .s_1 .content .notes br {
  display: none;
}
#run .s_1 .content .guest {
  margin: 30px auto 0;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  display: table;
}
#run .s_1 .content .guest .guest_ttl {
  display: table-cell;
  vertical-align: top;
}
#run .s_1 .content .guest .guest_ttl span {
  display: inline-block;
  padding: 0 8px;
  font-size: 1em;
  background: #eee;
  line-height: 2;
}
#run .s_1 .content .guest .name {
  display: table-cell;
  vertical-align: top;
  text-align: left;
  font-size: 1.6em;
  line-height: 1.38;
  padding-left: 18px;
}
#run .s_1 .content .guest .name br {
  display: none;
}
#run .s_1 .content .main_img {
  margin-top: 30px;
}
#run .s_1 .content .credit {
  margin-top: 20px;
  font-size: 1.2em;
}
#run .s_1 .content .credit br {
  display: none;
}
#run .s_1 .content .txt_area {
  margin-top: 40px;
  text-align: left;
}
#run .s_1 .content .txt_area .txt {
  float: left;
  width: 430px;
}
#run .s_1 .content .txt_area .txt p {
  font-size: 1.6em;
  line-height: 1.75;
  margin-bottom: 1.75em;
}
#run .s_1 .content .txt_area .txt.last p:last-child {
  margin-bottom: 0;
}
#run .s_1 .content .txt_area .img {
  float: right;
  width: 280px;
  margin-bottom: 15px;
}
#run .s_1 .content .txt_area .img.last {
  margin-bottom: 0;
}
#run .s_1 .content .txt_area .img .cap {
  margin-top: 5px;
  font-size: 1.2em;
  line-height: 1.67;
  color: #666;
}
#run .s_1 .report_list {
  border-top: 1px solid #eee;
  padding: 70px 0 110px;
  width: 860px;
  overflow: hidden;
}
#run .s_1 .report_list h3 {
  width: 238px;
}
#run .s_1 .report_list ul {
  margin: 0 -10px;
  width: 880px;
}
#run .s_1 .report_list li {
  margin: 0 10px;
  margin-top: 40px;
  float: left;
  width: 340px;
  min-height: 388px;
  padding: 39px;
  border: 1px solid #eee;
}
#run .s_1 .report_list .txt {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#run .s_1 .report_list .ttl {
  margin-right: -10px;
  margin-top: 25px;
  font-size: 2em;
  color: #e60012;
  line-height: 1.7;
}
#run .s_1 .report_list .ttl .small {
  display: block;
  font-size: 0.6em;
}
#run .s_1 .report_list .date {
  margin-top: 12px;
  font-size: 1.4em;
}
#run .s_1 .report_list .place {
  margin-top: 8px;
  font-size: 1.2em;
}
#run .s_1 .report_list .btn {
  margin-top: 30px;
  text-align: center;
}
#run .s_1 .report_list .btn a {
  margin: 0 auto;
}
#run .s_2 .report_list {
  border-top: 1px solid #eee;
  padding: 70px 0 100px;
  width: 860px;
  overflow: hidden;
}
#run .s_2 .report_list h3 {
  width: 238px;
}
#run .s_2 .report_list ul {
  margin: 0 -28px 0 -27px;
  width: 915px;
}
#run .s_2 .report_list li {
  margin-top: 40px;
  float: left;
  width: 250px;
  min-height: 330px;
  padding: 0 27px;
  border-right: 1px solid #eee;
}
#run .s_2 .report_list .txt {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#run .s_2 .report_list .ttl {
  margin-top: 8px;
  font-size: 1.4em;
  color: #e60012;
  line-height: 1.7;
}
#run .s_2 .report_list .ttl .small {
  display: block;
  font-size: 0.72em;
}
#run .s_2 .report_list .date {
  margin-top: 12px;
  font-size: 1.4em;
}
#run .s_2 .report_list .place {
  margin-top: 8px;
  font-size: 1.2em;
}
#run .s_2 .report_list .btn {
  margin-top: 18px;
  text-align: center;
}
#run .s_2 .report_list .btn a {
  margin: 0 auto;
  width: 180px;
  font-size: 1.4em;
}
#run .s_2 .coming {
  padding: 70px 0 0;
}
#run .s_2 .btn_area {
  text-align: center;
  margin: 40px auto 100px;
}
#run .s_2 .btn_area a {
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  #run .p_head {
    width: 100%;
    overflow: hidden;
    padding: 0 0 25px;
  }
  #run .p_head .img {
    margin: 0 -12.5% 20px;
  }
  #run .p_head .anchor {
    margin-top: 22px;
    text-align: left;
  }
  #run .p_head .anchor li {
    display: block;
    font-size: 1.2em;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #run .p_head .anchor li a {
    display: block;
    padding-left: 22px;
  }
  #run .coming {
    text-align: center;
  }
  #run .coming h3 {
    width: 157px;
    margin: 0 auto 24px;
  }
  #run .coming ul {
    letter-spacing: normal;
    margin: 0;
  }
  #run .coming li {
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #eee;
    margin: 0 0 20px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    padding: 24px;
    text-align: left;
  }
  #run .coming .img {
    width: auto;
    display: block;
  }
  #run .coming .txt {
    display: block;
    margin-left: 0;
  }
  #run .coming .ttl {
    margin-top: 12px;
    margin-right: -10px;
    font-size: 1.4em;
  }
  #run .coming .ttl span {
    font-size: 10px;
    margin-bottom: 8px;
  }
  #run .coming .notes {
    margin-top: 6px;
    font-size: 1em;
    line-height: 1.6;
  }
  #run .coming .btn {
    margin: 15px auto 0;
  }
  #run .coming .btn a {
    margin: 0 auto;
  }
  #run .s_1 .coming {
    border-top: 1px solid #eee;
    padding: 30px 0 10px;
  }
  #run .s_1 .content {
    margin: 25px -3% 0;
    padding: 45px 22px 22px;
  }
  #run .s_1 .content .tag {
    top: -12px;
    left: 50%;
    margin-left: -28px;
    width: 56px;
    height: 24px;
    font-size: 11px;
    line-height: 20px;
  }
  #run .s_1 .content .tag:before {
    top: -9px;
    border-width: 0 0 9px 56px;
  }
  #run .s_1 .content .ttl {
    margin: 0 -5px;
    font-size: 1.6em;
    line-height: 1.6;
  }
  #run .s_1 .content .ttl .small {
    margin-bottom: 5px;
    font-size: 0.6em;
  }
  #run .s_1 .content .notes {
    margin-top: 10px;
    font-size: 1em;
    line-height: 1.5;
    padding-bottom: 20px;
  }
  #run .s_1 .content .notes br {
    display: block;
  }
  #run .s_1 .content .guest {
    margin: 20px auto 0;
  }
  #run .s_1 .content .guest .guest_ttl span {
    padding: 0 6px;
    font-size: 1em;
    line-height: 1.8;
  }
  #run .s_1 .content .guest .name {
    font-size: 1.2em;
    line-height: 1.5;
    padding-left: 10px;
  }
  #run .s_1 .content .guest .name br {
    display: block;
  }
  #run .s_1 .content .main_img {
    margin-top: 20px;
  }
  #run .s_1 .content .credit {
    margin-top: 15px;
    font-size: 1em;
    line-height: 1.6;
  }
  #run .s_1 .content .credit br {
    display: block;
  }
  #run .s_1 .content .txt_area {
    margin-top: 20px;
  }
  #run .s_1 .content .txt_area .txt {
    float: none;
    width: 100%;
  }
  #run .s_1 .content .txt_area .txt p {
    font-size: 1.2em;
    line-height: 1.67;
    margin-bottom: 1.67em;
  }
  #run .s_1 .content .txt_area .txt.last p:last-child {
    margin-bottom: 0;
  }
  #run .s_1 .content .txt_area .img {
    float: none;
    width: 100%;
    margin-bottom: 20px;
  }
  #run .s_1 .content .txt_area .img.last {
    margin-bottom: 0;
  }
  #run .s_1 .content .txt_area .img .cap {
    margin-top: 5px;
    font-size: 1em;
    line-height: 1.5;
  }
  #run .s_1 .report_list {
    padding: 30px 0 45px;
    width: 100%;
  }
  #run .s_1 .report_list h3 {
    width: 151px;
    margin: 0 auto 25px;
  }
  #run .s_1 .report_list ul {
    margin: 0;
    width: 100%;
  }
  #run .s_1 .report_list li {
    margin: 0 0 20px;
    float: none;
    width: 100%;
    min-height: inherit;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    padding: 25px;
  }
  #run .s_1 .report_list li:last-child {
    margin: 0;
  }
  #run .s_1 .report_list .ttl {
    margin-right: 0;
    margin-top: 10px;
    font-size: 1.4em;
    text-align: left;
  }
  #run .s_1 .report_list .ttl .small {
    font-size: 10px;
  }
  #run .s_1 .report_list .date {
    margin-top: 6px;
    font-size: 1em;
    text-align: left;
  }
  #run .s_1 .report_list .place {
    margin-top: 6px;
    font-size: 1em;
    text-align: left;
  }
  #run .s_1 .report_list .btn {
    margin-top: 20px;
  }
  #run .s_2 .report_list {
    width: 100%;
    overflow: hidden;
    text-align: left;
    border-top: 1px solid #eee;
    padding: 30px 0 20px;
  }
  #run .s_2 .report_list h3 {
    width: 151px;
    margin: 0 auto 10px;
  }
  #run .s_2 .report_list ul {
    margin: 0;
    width: auto;
  }
  #run .s_2 .report_list li {
    margin-top: 0;
    float: none;
    width: 100%;
    height: auto;
    min-height: inherit;
    padding: 20px 0;
    border-right: none;
    border-bottom: 1px solid #eee;
  }
  #run .s_2 .report_list li:last-child {
    border-bottom: none;
  }
  #run .s_2 .report_list .wrap {
    display: table;
  }
  #run .s_2 .report_list .img,
  #run .s_2 .report_list .txt {
    display: table-cell;
    vertical-align: top;
  }
  #run .s_2 .report_list .img {
    width: 125px;
  }
  #run .s_2 .report_list .txt {
    margin-top: 0;
    padding-left: 10px;
  }
  #run .s_2 .report_list .ttl {
    margin-top: -2px;
    line-height: 1.3;
  }
  #run .s_2 .report_list .ttl .small {
    line-height: 1.4;
    margin-bottom: 2px;
  }
  #run .s_2 .report_list .date {
    margin-top: 5px;
    font-size: 1em;
    line-height: 1.6;
  }
  #run .s_2 .report_list .place {
    margin-top: 0;
    font-size: 1em;
    line-height: 1.6;
  }
  #run .s_2 .report_list .btn {
    margin-top: 10px;
  }
  #run .s_2 .report_list .btn a {
    margin: 0 auto;
    width: 145px;
    height: 30px;
    border-radius: 15px;
    font-size: 1em;
    padding: 10px 0;
  }
  #run .s_2 .coming {
    margin-top: 30px;
    padding: 0;
  }
  #run .s_2 .btn_area {
    margin: 25px 0 50px;
  }
}
@media screen and (max-width: 320px) {
  #run .p_head .img {
    margin: 0 -5.56% 20px;
  }
}
#athlete .p_head {
  padding-bottom: 100px;
}
#athlete .s_1 {
  padding-bottom: 115px;
}
#athlete .s_1 .list {
  position: relative;
}
#athlete .s_1 .list.first {
  border-top: 1px solid #eee;
}
#athlete .s_1 .list .sport {
  width: 124px;
  height: 94px;
  position: absolute;
  text-align: center;
  z-index: 1;
  top: -44px;
  left: -50px;
}
#athlete .s_1 .list .sport:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 68px;
  border-right: 124px solid #e60012;
  border-top: 26px solid transparent;
  color: #fff;
  z-index: 1;
}
#athlete .s_1 .list .sport p {
  position: relative;
  z-index: 2;
  padding-top: 45px;
  margin: 0 auto;
  width: 107px;
}
#athlete .s_1 .list li {
  border-bottom: 1px solid #eee;
  position: relative;
  padding: 40px 0;
  *zoom: 1;
}
#athlete .s_1 .list li:before, #athlete .s_1 .list li:after {
  content: '';
  display: table;
}
#athlete .s_1 .list li:after {
  clear: both;
}
#athlete .s_1 .list .img {
  width: 180px !important;
  height: 180px !important;
  float: left;
  display: inline;
  margin: 0 30px 0 100px;
}
#athlete .s_1 .list .img img {
  border-radius: 90px;
  width: 180px;
  height: 180px;
}
#athlete .s_1 .list .img img.border {
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  border: 1px solid #f0f0f0;
}
#athlete .s_1 .list .ttl {
  float: left;
  display: inline;
  width: 550px;
}
#athlete .s_1 .list .name {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 2.4em;
}
#athlete .s_1 .list .sub_name {
  margin-top: 12px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
}
#athlete .s_1 .list .notes {
  margin-top: 12px;
  line-height: 1.6;
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
}
#athlete .s_1 .list .txt {
  margin-top: 16px;
  float: left;
  display: inline;
  width: 550px;
  font-size: 1.4em;
  line-height: 1.86;
}

@media screen and (max-width: 600px) {
  #athlete .p_head {
    padding-bottom: 20px;
  }
  #athlete .s_1 {
    padding-bottom: 35px;
  }
  #athlete .s_1 .list {
    position: relative;
  }
  #athlete .s_1 .list.first {
    border-top: none;
  }
  #athlete .s_1 .list .sport {
    width: 82px;
    height: 62px;
    position: relative;
    text-align: center;
    margin: 0 auto;
    z-index: 1;
    top: 0;
    left: 0;
  }
  #athlete .s_1 .list .sport:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 46px;
    border-right: 82px solid #e60012;
    border-top: 16px solid transparent;
    color: #fff;
    z-index: 1;
  }
  #athlete .s_1 .list .sport p {
    position: relative;
    z-index: 2;
    padding-top: 31px;
    margin: 0 auto;
    width: 70px;
  }
  #athlete .s_1 .list li {
    border-bottom: none;
    border-top: 1px solid #eee;
    position: relative;
    padding: 25px 0;
    *zoom: 1;
  }
  #athlete .s_1 .list li:before, #athlete .s_1 .list li:after {
    content: '';
    display: table;
  }
  #athlete .s_1 .list li:after {
    clear: both;
  }
  #athlete .s_1 .list .img {
    width: 90px !important;
    height: 90px !important;
    float: none;
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px;
  }
  #athlete .s_1 .list .img img {
    border-radius: 45px;
    width: 90px;
    height: 90px;
  }
  #athlete .s_1 .list .ttl {
    float: none;
    display: inline-block;
    vertical-align: middle;
    width: 160px;
    text-align: left;
  }
  #athlete .s_1 .list .name {
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.7em;
    line-height: 1.5;
  }
  #athlete .s_1 .list .sub_name {
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    margin-top: 5px;
    font-size: 1.1em;
  }
  #athlete .s_1 .list .notes {
    margin-top: 10px;
    line-height: 1.64;
    color: #e60012;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1.1em;
  }
  #athlete .s_1 .list .txt {
    margin-top: 16px;
    float: none;
    display: block;
    width: 100%;
    font-size: 1.1em;
    line-height: 1.64;
    text-align: left;
  }
}
#column .s_1 {
  padding-bottom: 110px;
}
#column .s_1 .list {
  margin: 68px auto 0;
  padding-top: 86px;
  text-align: left;
  border-top: 1px solid #eee;
}
#column .s_1 .list ul {
  letter-spacing: -.4em;
  margin: 0 -28px;
}
#column .s_1 .list li {
  display: inline-block;
  vertical-align: top;
  position: relative;
  width: 250px;
  margin: 0 27px 0 28px;
  letter-spacing: normal;
}
#column .s_1 .list li:not(.coming) {
  cursor: pointer;
}
#column .s_1 .list .list_inr > p.coming {
  color: #e60012;
  text-align: center;
  font-size: 1.6em;
  margin-top: 42px;
}
#column .s_1 .list .img {
  width: 250px;
  height: 180px;
  background-color: #f4f4f4;
  font-size: 1.6em;
  line-height: 180px;
  text-align: center;
  color: #999;
  margin-bottom: 10px;
  position: relative;
}
#column .s_1 .list .vol {
  background-color: #e60012;
  color: #fff;
  position: absolute;
  top: -16px;
  left: -10px;
  z-index: 2;
  width: 70px;
  height: 26px;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
  font-style: italic;
  font-size: 24px;
  line-height: 0.8;
  overflow: visible;
  text-align: center;
}
#column .s_1 .list .vol:before {
  content: '';
  position: absolute;
  top: -10px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 10px 70px;
  border-color: transparent transparent #e60013 transparent;
}
#column .s_1 .list .vol span {
  font-size: 16px;
}
#column .s_1 .list .txt {
  font-size: 1.4em;
  line-height: 1.71;
  margin-bottom: 15px;
  min-height: 6.84em;
}
#column .s_1 .list .face {
  display: inline-block;
  vertical-align: middle;
  width: 70px;
  margin-right: 18px;
}
#column .s_1 .list .profile_box {
  display: inline;
}
#column .s_1 .list .name {
  display: inline-block;
  vertical-align: middle;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  line-height: 2;
  margin-left: -5px;
}
#column .s_1 .list .name span {
  display: block;
  text-indent: 5px;
  font-size: 1.6em;
}
#column .s_1 .list .profile {
  margin-top: 10px;
  font-size: 1.2em;
  line-height: 1.67;
  min-height: 3.34em;
}
#column .s_1 .list .btn {
  margin: 24px auto 0;
  text-align: center;
}
#column .s_1 .list .btn a {
  margin: 0 auto;
}
#column .s_1 .list .hover .btn_green {
  background-color: #5f8014;
}
#column .s_1 .content {
  border: 1px solid #eee;
  position: relative;
  margin: 70px -30px 0;
  padding: 92px 80px 80px;
  text-align: center;
}
#column .s_1 .content .vol {
  background-color: #e60012;
  color: #fff;
  position: absolute;
  top: -27px;
  left: 390px;
  z-index: 2;
  width: 140px;
  height: 74px;
  font-family: "brandon-grotesque", sans-serif;
  font-weight: bold;
  font-style: italic;
  font-size: 45px;
  line-height: 1.3;
  overflow: visible;
  text-align: center;
}
#column .s_1 .content .vol:before {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 20px 140px;
  border-color: transparent transparent #e60013 transparent;
}
#column .s_1 .content .vol span {
  font-size: 30px;
}
#column .s_1 .content.vol1 .ttl {
  width: 627px;
  margin: 0 auto 15px;
}
#column .s_1 .content.vol2 .ttl {
  width: 493px;
  margin: 0 auto 20px;
}
#column .s_1 .content.vol3 .ttl {
  width: 453px;
  margin: 0 auto 20px;
}
#column .s_1 .content .lead {
  margin-bottom: 26px;
  font-size: 1.6em;
  line-height: 1.75;
}
#column .s_1 .content .face {
  display: inline-block;
  vertical-align: middle;
  width: 170px;
  height: 170px;
  margin-right: 30px;
  margin-bottom: 10px;
}
#column .s_1 .content .face img {
  width: 100%;
  height: auto;
}
#column .s_1 .content .profile_box {
  margin-top: 6px;
  margin-bottom: 10px;
  display: inline-block;
  vertical-align: middle;
  background-color: #90c31f;
  padding: 0 6px 6px 0;
  width: 480px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  position: relative;
  text-align: left;
}
#column .s_1 .content .profile_box:before, #column .s_1 .content .profile_box:after {
  content: '';
  background-color: #fff;
  width: 6px;
  height: 6px;
  position: absolute;
  z-index: 2;
}
#column .s_1 .content .profile_box:before {
  bottom: 0;
  left: 0;
}
#column .s_1 .content .profile_box:after {
  top: 0;
  right: 0;
}
#column .s_1 .content .profile_box_inr {
  display: block;
  border: 1px solid #90c31f;
  background-color: #fff;
  padding: 25px 38px 28px;
  position: relative;
}
#column .s_1 .content .profile_box_inr:before, #column .s_1 .content .profile_box_inr:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
}
#column .s_1 .content .profile_box_inr:before {
  border-width: 8px 12px 8px 0;
  border-color: transparent #8fc31f transparent transparent;
  z-index: 1;
  top: 64px;
  left: -12px;
}
#column .s_1 .content .profile_box_inr:after {
  border-width: 7px 11px 7px 0;
  border-color: transparent #fff transparent transparent;
  z-index: 2;
  top: 65px;
  left: -11px;
}
#column .s_1 .content .name {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
}
#column .s_1 .content .name span {
  font-size: 18px;
}
#column .s_1 .content .profile {
  margin-top: 14px;
  font-size: 1.2em;
  line-height: 1.67;
}
#column .s_1 .content .field {
  margin-top: 10px;
  font-size: 1.2em;
}
#column .s_1 .content .field strong {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#column .s_1 .content .content_body {
  padding-left: 85px;
  text-align: left;
}
#column .s_1 .content .que {
  margin: 40px 0 20px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  color: #e60012;
  font-size: 1.6em;
  line-height: 1.75;
  position: relative;
}
#column .s_1 .content .que:before {
  position: absolute;
  content: '';
  width: 70px;
  height: 1px;
  background-color: #e60012;
  left: -85px;
  top: 0.88em;
}
#column .s_1 .content .ans {
  font-size: 1.6em;
  line-height: 1.75;
  position: relative;
}
#column .s_1 .content .ans_name {
  position: absolute;
  left: -85px;
  top: 0;
  width: 85px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  color: #90c31f;
  display: block;
}
#column .s_1 .content .ans_name > span {
  display: block;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
  font-size: 12px;
}
#column .s_1 .content img.al_c {
  width: 580px;
  height: auto;
  margin: 40px auto 0;
}
#column .s_1 .content img.al_r {
  float: right;
  margin: 0 0 50px 50px;
  width: 300px;
  height: auto;
}
#column .s_1 .content .fig_box {
  border: 1px solid #eee;
  text-align: center;
  width: 580px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  margin-top: 40px;
}
#column .s_1 .content.vol3 .fig_box {
  padding: 35px 0 30px;
}
#column .s_1 .content.vol3 .fig_box img {
  width: 460px;
  height: auto;
  margin: 5px auto 10px;
}
#column .s_1 .content .fig_ttl {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
}
#column .s_1 .content .fig_notes {
  font-size: 1.2em;
  color: #666;
}
#column .s_1 .content .download {
  margin-top: 60px;
  border-top: 40px solid #90c31f;
  border-left: 2px solid #90c31f;
  border-right: 2px solid #90c31f;
  border-bottom: 2px solid #90c31f;
  position: relative;
  width: 760px;
  padding: 38px 0 42px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  text-align: center;
  letter-spacing: normal;
}
#column .s_1 .content .download:before {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 6px;
  background-color: #fff;
  top: -26px;
  left: 50%;
  margin-left: -6px;
}
#column .s_1 .content .download h3 {
  width: 273px;
  margin: 0 auto;
}
#column .s_1 .content .download .img {
  width: 420px;
  margin: 32px auto 18px;
}
#column .s_1 .content .download p {
  font-size: 1.4em;
  line-height: 1.71;
}
#column .s_1 .content .btn_red_s {
  width: 190px;
  margin: 24px auto 0;
}
#column .s_1 .content.vol2 .column {
  margin-top: 40px;
  border: 1px solid #90c31f;
  padding-bottom: 50px;
}
#column .s_1 .content.vol2 .column h3 {
  background: #90c31f;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.6em;
  line-height: 1.75;
  padding: 18px 0;
}
#column .s_1 .content.vol2 .column .txt {
  font-size: 1.4em;
  line-height: 1.71;
  padding: 0 40px;
  margin: 20px 0 25px;
  text-align: left;
}
#column .s_1 .content.vol2 .column .column_que {
  color: #e60012;
  font-size: 1.2em;
  margin-bottom: 10px;
}
#column .s_1 .content.vol2 .column .column_que span {
  font-size: 30px;
  font-family: "brandon-grotesque", sans-serif;
  display: inline-block;
  margin-right: 8px;
}
#column .s_1 .content.vol2 .column .column_que strong {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 16px;
}
#column .s_1 .content.vol2 .column .fig {
  width: 654px;
  margin: 0 auto;
}
#column .s_1 .btn_area {
  text-align: center;
  margin-top: 60px;
}
#column .s_1 .btn_area a {
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  #column .s_1 {
    padding-bottom: 55px;
  }
  #column .s_1 .list {
    margin: 34px auto 0;
    padding-top: 0;
    text-align: center;
    border-top: none;
  }
  #column .s_1 .list ul {
    letter-spacing: -.4em;
    margin: 0 auto;
    width: 100%;
  }
  #column .s_1 .list li {
    display: block;
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 40px 0;
    letter-spacing: normal;
    border-top: 1px solid #eee;
    text-align: center;
  }
  #column .s_1 .list li:last-child {
    padding: 40px 0 0;
  }
  #column .s_1 .list .list_inr {
    width: 250px;
    margin: 0 auto;
    text-align: left;
    letter-spacing: -.4em;
  }
  #column .s_1 .list .list_inr > p.coming {
    color: #e60012;
    text-align: center;
    font-size: 1.4em;
    margin-top: 15px;
    letter-spacing: normal;
  }
  #column .s_1 .list .img {
    width: 100%;
    height: auto;
    background-color: #f4f4f4;
    font-size: 1.4em;
    line-height: 180px;
    text-align: center;
    color: #999;
    margin-bottom: 10px;
    position: relative;
    letter-spacing: normal;
  }
  #column .s_1 .list .vol {
    background-color: #e60012;
    color: #fff;
    position: absolute;
    top: -16px;
    left: -10px;
    z-index: 2;
    width: 70px;
    height: 26px;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 24px;
    line-height: 0.8;
    overflow: visible;
    text-align: center;
    letter-spacing: normal;
  }
  #column .s_1 .list .vol:before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 10px 70px;
    border-color: transparent transparent #e60013 transparent;
  }
  #column .s_1 .list .vol span {
    font-size: 16px;
  }
  #column .s_1 .list .txt {
    font-size: 1.2em;
    line-height: 1.67;
    margin-bottom: 8px;
    letter-spacing: normal;
    min-height: inherit;
  }
  #column .s_1 .list .face {
    display: inline-block;
    vertical-align: middle;
    width: 24%;
    margin-right: 4%;
  }
  #column .s_1 .list .profile_box {
    display: inline-block;
    vertical-align: middle;
    width: 72%;
    letter-spacing: normal;
  }
  #column .s_1 .list .name {
    display: block;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    line-height: 2;
    margin-left: 0;
  }
  #column .s_1 .list .name span {
    display: inline-block;
    text-indent: 0;
    font-size: 1.4em;
    margin-right: 2px;
  }
  #column .s_1 .list .profile {
    display: inline;
    margin-top: 10px;
    font-size: 1em;
    line-height: 1.67;
    min-height: inherit;
  }
  #column .s_1 .list .btn {
    margin: 15px auto 0;
    text-align: center;
    letter-spacing: normal;
  }
  #column .s_1 .list .btn a {
    margin: 0 auto;
  }
  #column .s_1 .list .hover .btn_green {
    background-color: #90c31f;
  }
  #column .s_1 .content {
    border: 1px solid #eee;
    position: relative;
    margin: 60px -3% 0;
    padding: 50px 22px 22px;
    text-align: left;
  }
  #column .s_1 .content .vol {
    background-color: #e60012;
    color: #fff;
    position: absolute;
    top: -27px;
    left: 50%;
    margin-left: -35px;
    z-index: 2;
    width: 70px;
    height: 37px;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 22px;
    line-height: 1.3;
    overflow: visible;
    text-align: center;
  }
  #column .s_1 .content .vol:before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 10px 70px;
    border-color: transparent transparent #e60013 transparent;
  }
  #column .s_1 .content .vol span {
    font-size: 15px;
  }
  #column .s_1 .content.vol1 .ttl {
    width: 100%;
    max-width: 313px;
    margin: 0 auto 15px;
  }
  #column .s_1 .content.vol2 .ttl {
    width: 100%;
    max-width: 246px;
    margin: 0 auto 15px;
  }
  #column .s_1 .content.vol3 .ttl {
    width: 226px;
    margin: 0 auto 15px;
  }
  #column .s_1 .content .lead {
    margin-bottom: 15px;
    font-size: 1.2em;
    line-height: 1.67;
  }
  #column .s_1 .content .lead br {
    display: none;
  }
  #column .s_1 .content .face {
    display: inline-block;
    vertical-align: top;
    width: 25%;
    height: auto;
    margin-right: 4%;
    margin-bottom: 0;
  }
  #column .s_1 .content .face img {
    width: 100%;
    height: auto;
  }
  #column .s_1 .content .profile_box {
    margin-top: 0;
    margin-bottom: 0;
    display: inline-block;
    vertical-align: top;
    background-color: #90c31f;
    padding: 0 4px 4px 0;
    width: 70%;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    position: relative;
    text-align: left;
  }
  #column .s_1 .content .profile_box:before, #column .s_1 .content .profile_box:after {
    content: '';
    background-color: #fff;
    width: 4px;
    height: 4px;
    position: absolute;
    z-index: 2;
  }
  #column .s_1 .content .profile_box:before {
    bottom: 0;
    left: 0;
  }
  #column .s_1 .content .profile_box:after {
    top: 0;
    right: 0;
  }
  #column .s_1 .content .profile_box_inr {
    display: block;
    border: 1px solid #90c31f;
    background-color: #fff;
    padding: 12px 10px 12px 15px;
    position: relative;
  }
  #column .s_1 .content .profile_box_inr:before, #column .s_1 .content .profile_box_inr:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    position: absolute;
  }
  #column .s_1 .content .profile_box_inr:before {
    border-width: 4px 6px 4px 0;
    border-color: transparent #8fc31f transparent transparent;
    z-index: 1;
    top: 26px;
    left: -6px;
  }
  #column .s_1 .content .profile_box_inr:after {
    border-width: 3px 5px 3px 0;
    border-color: transparent #fff transparent transparent;
    z-index: 2;
    top: 27px;
    left: -5px;
  }
  #column .s_1 .content .name {
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    font-size: 1em;
  }
  #column .s_1 .content .name span {
    margin-bottom: 6px;
    display: block;
    font-size: 1.4em;
  }
  #column .s_1 .content .profile {
    margin-top: 6px;
    font-size: 1em;
    line-height: 1.6;
  }
  #column .s_1 .content .field {
    margin-top: 0;
    font-size: 1em;
    line-height: 1.6;
  }
  #column .s_1 .content .field strong {
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  }
  #column .s_1 .content .content_body {
    padding-left: 0;
    text-align: left;
  }
  #column .s_1 .content .que {
    margin: 20px 0 10px;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
    color: #e60012;
    font-size: 1.2em;
    line-height: 1.67;
    position: relative;
    padding-left: 40px;
  }
  #column .s_1 .content .que:before {
    position: absolute;
    content: '';
    width: 30px;
    height: 1px;
    background-color: #e60012;
    left: 0;
    top: 0.84em;
  }
  #column .s_1 .content .que br {
    display: none;
  }
  #column .s_1 .content .ans {
    font-size: 1.2em;
    line-height: 1.67;
    position: relative;
  }
  #column .s_1 .content .ans_name {
    position: static;
    left: 0;
    top: 0;
    width: auto;
    display: block;
    margin-bottom: 5px;
  }
  #column .s_1 .content .ans_name > span {
    display: inline;
    font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ L", "DNPShueiMGoStd-L", sans-serif;
    font-size: 100%;
  }
  #column .s_1 .content img.al_c {
    width: 100%;
    height: auto;
    margin: 20px auto 0;
  }
  #column .s_1 .content img.al_r {
    float: right;
    margin: 0 0 10px 10px;
    width: 50%;
    height: auto;
  }
  #column .s_1 .content .fig_box {
    width: 100%;
    margin-top: 20px;
  }
  #column .s_1 .content.vol3 .fig_box {
    padding: 20px 10px 15px;
  }
  #column .s_1 .content.vol3 .fig_box img {
    width: 100%;
    margin: 10px auto;
  }
  #column .s_1 .content .fig_ttl {
    font-size: 1.2em;
  }
  #column .s_1 .content .fig_notes {
    font-size: 1em;
  }
  #column .s_1 .content .download {
    margin-top: 20px;
    border-top: 20px solid #90c31f;
    border-left: 1px solid #90c31f;
    border-right: 1px solid #90c31f;
    border-bottom: 1px solid #90c31f;
    position: relative;
    width: 100%;
    padding: 18px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    text-align: center;
    letter-spacing: normal;
  }
  #column .s_1 .content .download:before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 3px;
    background-color: #fff;
    top: -13px;
    left: 50%;
    margin-left: -3px;
  }
  #column .s_1 .content .download h3 {
    width: 151px;
    margin: 0 auto;
  }
  #column .s_1 .content .download .img {
    width: 210px;
    margin: 14px auto 10px;
  }
  #column .s_1 .content .download p {
    font-size: 1.2em;
    line-height: 1.67;
    text-align: left;
  }
  #column .s_1 .content .download p br {
    display: none;
  }
  #column .s_1 .content .btn_red_s {
    width: 140px;
    margin: 8px auto 0;
  }
  #column .s_1 .content.vol2 .column {
    margin-top: 30px;
    padding-bottom: 20px;
    text-align: center;
  }
  #column .s_1 .content.vol2 .column h3 {
    font-size: 1.2em;
    line-height: 1.67;
    padding: 8px 20px;
  }
  #column .s_1 .content.vol2 .column .txt {
    font-size: 1em;
    line-height: 1.8;
    padding: 0 20px;
    margin: 15px 0 10px;
  }
  #column .s_1 .content.vol2 .column .column_que {
    font-size: 1em;
    line-height: 18px;
    margin-bottom: 10px;
  }
  #column .s_1 .content.vol2 .column .column_que span {
    font-size: 1.5em;
    margin-right: 8px;
  }
  #column .s_1 .content.vol2 .column .column_que strong {
    font-size: 1.2em;
  }
  #column .s_1 .content.vol2 .column .fig {
    width: 235px;
  }
  #column .s_1 .btn_area {
    margin-top: 30px;
  }
}
#photo .p_head {
  padding-bottom: 40px;
}
#photo .s_1 {
  padding-bottom: 90px;
}
#photo .s_1 .inr {
  position: relative;
}
#photo .s_1 .balloon {
  position: absolute;
  right: -12px;
  top: -202px;
  width: 220px;
  height: 169px;
  background-image: url("photo/img/photo_balloon.png");
  background-image: url("photo/img/photo_balloon_ie8.png") \9 ;
  background-repeat: no-repeat;
  background-size: contain;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 1.43;
  text-align: center;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding-top: 52px;
}
#photo .s_1 .balloon .small {
  display: block;
  margin-bottom: 2px;
  font-size: 12px;
}
#photo .s_1 .balloon .small:before {
  content: '';
  width: 15px;
  height: 15px;
  display: inline-block;
  vertical-align: top;
  background-image: url("photo/img/ico_zoom.png");
  background-image: url("photo/img/ico_zoom_ie8.png") \9 ;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 4px;
}
#photo .s_1 .photo_origin {
  visibility: hidden;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
#photo .s_1 .photo_list li {
  background: #eee;
  position: relative;
  margin-bottom: 20px;
}
#photo .s_1 .photo_list li.athlete a {
  width: 300px;
  height: 420px;
}
#photo .s_1 .photo_list li.athlete a:before {
  content: '';
  width: 70px;
  height: 36px;
  background-image: url("photo/img/ico_athlete.png");
  background-image: url("photo/img/ico_athlete_ie8.png") \9 ;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
}
#photo .s_1 .photo_list li.athlete a img {
  position: relative;
  z-index: 2;
}
#photo .s_1 .photo_list li.athlete.l {
  float: left;
}
#photo .s_1 .photo_list li.athlete.r {
  float: right;
}
#photo .s_1 .photo_list li.family a {
  width: 260px;
  height: 200px;
}
#photo .s_1 .photo_list li.family.l {
  float: right;
  margin-left: 20px;
}
#photo .s_1 .photo_list li.family.r {
  float: left;
  margin-right: 20px;
}
#photo .s_1 .photo_list li a {
  display: block;
  position: relative;
  z-index: 2;
  overflow: hidden;
  opacity: 0;
}
#photo .s_1 .photo_list li a img {
  -webkit-transition: -webkit-transform 0.175s linear;
          transition: transform 0.175s linear;
}
#photo .s_1 .photo_list li a:hover img {
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
}
#photo .s_1 .photo_list li .hover {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#cc90c31f,endColorstr=#cc90c31f);
  background: rgba(144, 195, 31, 0.8);
  width: 100%;
  height: 60px;
  position: absolute;
  bottom: -60px;
  left: 0;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  text-align: center;
  z-index: 3;
}
#photo .s_1 .photo_list li .hover:not(:target) {
  -webkit-filter: none;
          filter: none;
}
#photo .s_1 .photo_list li .hover .name {
  padding-top: 15px;
  font-size: 1.4em;
}
#photo .s_1 .photo_list li .hover .notes {
  margin-top: 5px;
  font-size: 1em;
}
#photo .s_1 .photo_list li .loading {
  width: 30px;
  height: 30px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -15px;
  margin-top: -15px;
  z-index: 1;
}

#modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5000;
  width: 100%;
  height: 100%;
}
#modal .layer {
  display: none;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}
#modal .wrap {
  display: none;
}
#modal .photo {
  position: fixed;
  top: 50%;
  left: 50%;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  padding: 4px;
}
#modal .photo.athlete {
  background: #90c31f;
  width: 368px;
  height: 564px;
  margin-left: -184px;
  margin-top: -282px;
}
#modal .photo.family {
  background: #e60012;
  width: 632px;
  height: 488px;
  margin-left: -316px;
  margin-top: -244px;
}
#modal .photo .cap {
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#modal .photo .name {
  margin-top: 12px;
  font-size: 1.6em;
}
#modal .photo .notes {
  margin-top: 5px;
  font-size: 1em;
}
#modal #modal_close {
  display: none;
  position: fixed;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  background: #e60012;
  display: block;
  border-radius: 20px;
}
#modal #modal_close:hover {
  background: #97000c;
}

@media screen and (max-width: 600px) {
  #photo .p_head {
    padding-bottom: 10px;
  }
  #photo .s_1 {
    padding-bottom: 40px;
  }
  #photo .s_1 .balloon {
    position: relative;
    right: 0;
    top: 0;
    width: 100%;
    height: 99px;
    background-image: url("photo/img/photo_balloon_sp.png");
    background-position: center top;
    font-size: 1.2em;
    line-height: 1;
    padding-top: 26px;
    margin-bottom: 16px;
  }
  #photo .s_1 .balloon .small {
    display: block;
    margin-bottom: 4px;
    font-size: 10px;
    line-height: 15px;
  }
  #photo .s_1 .balloon br {
    display: none;
  }
  #photo .s_1 .photo_origin {
    visibility: hidden;
    width: 1px;
    height: 1px;
    overflow: hidden;
  }
  #photo .s_1 .photo_list {
    width: 108%;
    margin: 0 -4%;
  }
  #photo .s_1 .photo_list li {
    background: #eee;
    position: relative;
    margin-bottom: 2.32%;
  }
  #photo .s_1 .photo_list li.athlete {
    clear: both;
    width: 34.88%;
  }
  #photo .s_1 .photo_list li.athlete a {
    width: 100%;
    height: auto;
  }
  #photo .s_1 .photo_list li.athlete a:before {
    width: 35px;
    height: 18px;
    top: 5px;
    left: 5px;
  }
  #photo .s_1 .photo_list li.athlete a img {
    position: relative;
    z-index: 2;
  }
  #photo .s_1 .photo_list li.athlete.l {
    float: left;
  }
  #photo .s_1 .photo_list li.athlete.r {
    float: right;
  }
  #photo .s_1 .photo_list li.family {
    width: 30.23%;
  }
  #photo .s_1 .photo_list li.family a {
    width: 100%;
    height: auto;
  }
  #photo .s_1 .photo_list li.family.l {
    float: right;
    margin-left: 2.32%;
  }
  #photo .s_1 .photo_list li.family.r {
    float: left;
    margin-right: 2.32%;
  }
  #photo .s_1 .photo_list li a {
    display: block;
    position: relative;
    z-index: 2;
    overflow: hidden;
    opacity: 0;
  }
  #photo .s_1 .photo_list li a img {
    -webkit-transition: none;
            transition: none;
  }
  #photo .s_1 .photo_list li a:hover img {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  #photo .s_1 .photo_list li .hover {
    display: none;
  }
  #photo .s_1 .photo_list li .loading {
    width: 15px;
    height: 15px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -7px;
    margin-top: -7px;
    z-index: 1;
  }

  #modal .wrap {
    display: none;
  }
  #modal .photo {
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    padding: 4px;
  }
  #modal .photo.athlete {
    background: #90c31f;
    width: 90%;
    height: auto;
    margin-left: 0;
    margin-top: 0;
  }
  #modal .photo.family {
    background: #e60012;
    width: 90%;
    height: auto;
    margin-left: 0;
    margin-top: 0;
  }
  #modal .photo .cap {
    padding-bottom: 4px;
  }
  #modal .photo .name {
    margin-top: 8px;
    font-size: 1.2em;
  }
  #modal .photo .notes {
    margin-top: 2px;
    font-size: 1em;
  }
  #modal #modal_close {
    display: none;
    position: fixed;
    top: 20px;
    right: 5%;
    width: 40px;
    height: 40px;
    background: #e60012;
    display: block;
    border-radius: 20px;
    z-index: 5001;
  }
  #modal #modal_close:hover {
    background: #97000c;
  }
}
@media screen and (max-width: 320px) {
  #photo .s_1 .photo_list {
    width: 100%;
    margin: 0;
  }

  #modal .photo.athlete {
    top: 80px;
    left: 5%;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}
#calendar .p_head {
  padding-bottom: 70px;
}
#calendar .p_head .inr {
  position: relative;
}
#calendar .p_head .balloon {
  position: absolute;
  z-index: 2;
  top: 50px;
  left: 50%;
  margin-left: 236px;
  width: 194px;
  height: 169px;
  background-image: url("img/top_s4_balloon.png");
  background-repeat: no-repeat;
  background-size: 194px 169px;
  color: #fff;
  text-align: center;
}
#calendar .p_head .balloon p {
  padding-top: 56px;
  margin-bottom: 10px;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  line-height: 1.29;
}
#calendar .p_head .balloon a {
  display: inline-block;
  height: 14px;
  background-image: url("img/arr_wh_28.png");
  background-repeat: no-repeat;
  background-size: 14px;
  color: #fff;
  padding-left: 18px;
  font-size: 1.2em;
  line-height: 14px;
}
#calendar .s_1 {
  padding-bottom: 100px;
}
#calendar .s_1 .download {
  border-top: 1px solid #eee;
  padding-top: 48px;
  text-align: left;
}
#calendar .s_1 .download h3 {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 2em;
  margin-bottom: 40px;
}
#calendar .s_1 .download ul {
  margin: 0 -23px;
  letter-spacing: -.4em;
}
#calendar .s_1 .download li {
  width: 180px;
  margin: 0 23px 48px;
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
}
#calendar .s_1 .download h4 {
  color: #e60012;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.2em;
  margin-bottom: 12px;
}
#calendar .s_1 .download .img {
  border: 1px solid #c7c7c7;
}
#calendar .s_1 .download .img a:hover {
  opacity: 0.7;
}
#calendar .s_1 .download .dl {
  margin-top: 15px;
  text-align: center;
}
#calendar .s_1 .download .dl a {
  display: block;
  width: 160px;
  height: 34px;
  border-radius: 17px;
  color: #fff;
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
  font-size: 1.4em;
  background-color: #e60012;
  line-height: 34px;
  text-decoration: none;
  margin: 0 auto;
}
#calendar .s_1 .download .dl a:after {
  content: '';
  width: 18px;
  height: 18px;
  background-image: url("calendar/img/ico_pdf.png");
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  margin-left: 6px;
}
#calendar .s_1 .download .dl a:hover {
  background: #97000c;
}
#calendar .s_1 .download.seal ul {
  margin: 0;
}
#calendar .s_1 .download.seal li {
  width: 100%;
  margin: 0;
}
#calendar .s_1 .download.seal .img {
  width: 180px;
  display: inline-block;
  vertical-align: bottom;
}
#calendar .s_1 .download.seal .note {
  display: inline-block;
  vertical-align: bottom;
  margin-left: 30px;
  color: #bababa;
}
#calendar .s_1 .download.seal .note p {
  font-size: 1.2em;
  line-height: 1.33;
}
#calendar .s_1 .download.seal .dl {
  width: 180px;
}

@media screen and (max-width: 600px) {
  #calendar .p_head {
    padding-bottom: 25px;
  }
  #calendar .p_head .balloon {
    display: none;
  }
  #calendar .s_1 {
    padding-bottom: 50px;
  }
  #calendar .s_1 .download {
    padding-top: 30px;
  }
  #calendar .s_1 .download h3 {
    font-size: 1.6em;
    margin-bottom: 25px;
  }
  #calendar .s_1 .download ul {
    width: 108%;
    margin: 0 -3.8%;
  }
  #calendar .s_1 .download li {
    width: 42.5%;
    margin: 0 3.7% 24px;
  }
  #calendar .s_1 .download h4 {
    font-size: 1em;
    margin-bottom: 6px;
  }
  #calendar .s_1 .download .img a:hover {
    opacity: 1;
  }
  #calendar .s_1 .download .dl {
    margin-top: 10px;
  }
  #calendar .s_1 .download .dl a {
    width: 110px;
    height: 30px;
    border-radius: 15px;
    font-size: 1em;
    line-height: 30px;
  }
  #calendar .s_1 .download .dl a:after {
    width: 13px;
    height: 13px;
    margin-left: 4px;
  }
  #calendar .s_1 .download .dl a:hover {
    background: #e60012;
  }
  #calendar .s_1 .download.seal ul {
    width: 100%;
    margin: 0;
  }
  #calendar .s_1 .download.seal li {
    width: 100%;
    margin: 0;
  }
  #calendar .s_1 .download.seal .img {
    width: 46%;
  }
  #calendar .s_1 .download.seal .note {
    margin-left: 4%;
    width: 48%;
  }
  #calendar .s_1 .download.seal .note p {
    margin-bottom: -0.25em;
    font-size: 1em;
    line-height: 1.5;
  }
  #calendar .s_1 .download.seal .note br {
    display: none;
  }
  #calendar .s_1 .download.seal .dl {
    width: 46%;
  }
}
.ie8 #calendar .p_head .balloon {
  background-image: url("img/top_s4_balloon_ie8.png");
}
.ie8 #calendar .p_head .balloon a {
  background-image: url("img/arr_wh_14.png");
}
.ie8 #calendar .s_1 .download .dl a:after {
  background-image: url("calendar/img/ico_pdf_ie8.png");
}

#privacy section .inr {
  width: 760px;
}
#privacy .p_head {
  padding-bottom: 55px;
}
#privacy .s_1 .inr {
  border-top: 1px solid #eee;
  padding: 60px 0 80px;
}
#privacy .s_1 h3, #privacy .s_1 h4, #privacy .s_1 h5 {
  font-family: "ç§€è‹±ä¸¸ã‚´ã‚·ãƒƒã‚¯ B", "DNPShueiMGoStd-B", sans-serif;
}
#privacy .s_1 h3 {
  color: #e60012;
  font-size: 2rem;
  margin-bottom: 18px;
}
#privacy .s_1 * + h3 {
  margin-top: 45px;
}
#privacy .s_1 h4, #privacy .s_1 h5 {
  font-size: 1.6rem;
  line-height: 1.75;
}
#privacy .s_1 h4 {
  margin-bottom: 10px;
}
#privacy .s_1 * + h4 {
  margin-top: 25px;
}
#privacy .s_1 ul + h5 {
  margin-top: 10px;
}
#privacy .s_1 p {
  font-size: 1.6rem;
  line-height: 1.75;
}
#privacy .s_1 p + p {
  margin-top: 12px;
}
#privacy .s_1 ul {
  font-size: 1.6rem;
  line-height: 1.75;
}
#privacy .s_1 a {
  color: #e60012;
}
#privacy .s_1 .ol1 li {
  position: relative;
  padding-left: 2em;
}
#privacy .s_1 .ol1 li + li {
  margin-top: 10px;
}
#privacy .s_1 .ol1 .num {
  position: absolute;
  top: 0;
  left: 0;
}
#privacy .s_1 .ol2 li {
  position: relative;
  padding-left: 1.8em;
}
#privacy .s_1 .ol2 .num {
  position: absolute;
  top: 0;
  left: 0.25em;
}

@media screen and (max-width: 600px) {
  #privacy section .inr {
    width: 86.7%;
  }
  #privacy .p_head {
    padding-bottom: 25px;
  }
  #privacy .s_1 .inr {
    padding: 25px 0 45px;
    text-align: left;
  }
  #privacy .s_1 h3 {
    font-size: 1.6rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  #privacy .s_1 * + h3 {
    margin-top: 25px;
  }
  #privacy .s_1 h4, #privacy .s_1 h5 {
    font-size: 1.4rem;
  }
  #privacy .s_1 h4 {
    margin-bottom: 5px;
  }
  #privacy .s_1 * + h4 {
    margin-top: 20px;
  }
  #privacy .s_1 ul + h5 {
    margin-top: 10px;
  }
  #privacy .s_1 p {
    font-size: 1.4rem;
  }
  #privacy .s_1 p + p {
    margin-top: 5px;
  }
  #privacy .s_1 ul {
    font-size: 1.4rem;
  }
  #privacy .s_1 .ol1 li {
    position: relative;
    padding-left: 2em;
  }
  #privacy .s_1 .ol1 li + li {
    margin-top: 5px;
  }
  #privacy .s_1 .ol1 .num {
    position: absolute;
    top: 0;
    left: 0;
  }
  #privacy .s_1 .ol2 li {
    position: relative;
    padding-left: 1.8em;
  }
  #privacy .s_1 .ol2 .num {
    position: absolute;
    top: 0;
    left: 0.25em;
  }
}
