/**
* css document
*
*
*/
/*----------------------------------------------------------
border radius
----------------------------------------------------------*/
/*----------------------------------------------------------
opacity
----------------------------------------------------------*/
/* black
-----------------------*/
/* GOLD
-----------------------*/
/* GRAY
-----------------------*/
#header {
  display: none; }
  @media only screen and (max-width: 740px) {
    #header {
      top: 0;
      position: absolute;
      display: block;
      width: 100%;
      z-index: 10;
      background: #fff; } }

#index_header {
  position: absolute;
  top: 0;
  width: 100%;
  height: auto;
  z-index: 10; }
  @media only screen and (max-width: 740px) {
    #index_header {
      display: none; } }
  #index_header .inner {
    position: relative;
    width: 980px; }
    @media only screen and (max-width: 740px) {
      #index_header .inner {
        position: static;
        width: auto;
        max-width: none; } }
  #index_header .logo {
    float: left; }

#index_site_id {
  padding: 20px 0 0 0;
  float: left; }

#index_header_link {
  position: absolute;
  top: 30px;
  right: 0; }
  #index_header_link ul {
    margin: 0;
    padding: 0; }
  #index_header_link a {
    color: #fff;
    padding-top: 10px;
    text-decoration: none; }
    #index_header_link a:hover {
      text-decoration: underline; }

#main_visual {
  position: relative;
  height: auto;
  width: 100%;
  background: #000;
  top: 0;
  overflow: hidden;
  z-index: 2; }
  @media only screen and (max-width: 740px) {
    #main_visual {
      padding-top: 42px;
      width: 100%;
      overflow: visible; }
    #main_visual .bx-viewport {
      height: auto !important;
      padding-bottom: 47.2973%; } }
  #main_visual .mv_main {
    position: relative;
    height: 500px;
    width: 100%;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #main_visual .mv_main {
        height: auto; } }
  #main_visual .title {
    position: absolute;
    display: block;
    width: 100%;
    height: 69px;
    top: -1000%;
    left: -1000%;
    right: -1000%;
    bottom: -1000%;
    z-index: 400;
    margin: auto;
    color: #fff; }
    @media only screen and (max-width: 740px) {
      #main_visual .title {
        height: 31.42857%; } }
    #main_visual .title h1 {
      height: 69px;
      text-indent: 100%;
      white-space: nowrap;
      overflow: hidden;
      background: url(/img/mv/main_title.png) no-repeat center center; }
      @media only screen and (max-width: 740px) {
        #main_visual .title h1 {
          height: 100%;
          background: url(/img/mv/main_title_sp.png) no-repeat center center;
          background-size: 67.56757% auto; } }
    #main_visual .title p {
      font-size: 18px;
      text-align: center;
      letter-spacing: 1px; }
      @media only screen and (max-width: 740px) {
        #main_visual .title p {
          width: 100%;
          font-size: 10px;
          position: absolute; } }

#slider img {
  position: absolute;
  height: 500px;
  display: block;
  width: 1920px;
  max-width: none;
  left: -1000%;
  right: -1000%;
  margin: auto; }
  #slider img.pcH {
    display: none; }
  @media only screen and (max-width: 740px) {
    #slider img {
      height: auto;
      width: 100%;
      top: 0;
      bottom: auto; }
    #slider img.pcH {
      display: block; }
    #slider img.spH {
      display: none; } }


/* #news-message
-----------------------------*/
#news-message{
	max-width: 980px;
	background: #efefef;
	padding: 30px;
	margin: 10px auto;
}
#news-message.is-white{
  background: #fff;
}
#news-message.is-center{
	text-align: center;
}
@media screen and (max-width: 750px){
#news-message.is-center{
	text-align: left;
}
}
@media screen and (max-width: 740px){
#news-message{
	padding: 20px;
	margin: 10px;
}
}
	#news-message p{
		margin: 0;
	}
	#news-message .name{
		margin-top: 20px;
		font-weight: bold;
	}
	@media screen and (max-width: 740px){
	#news-message .name{
		margin-top: 10px;
	}
	}





#news {
  position: relative;
  bottom: 0;
  width: 100%;
  background: #000;
  color: #fff; }
  #news .inner {
    position: relative; }
    @media only screen and (max-width: 740px) {
      #news .inner {
        width: auto;
        padding: 0; } }
  #news h1 {
    float: left;
    width: 70px;
    padding: 14px 0 5px;
    margin-right: -70px; }
    @media only screen and (max-width: 740px) {
      #news h1 {
        float: none;
        width: auto;
        height: 12px;
        padding: 15px 0 15px 4%;
        margin-right: 0;
        border-bottom: 1px solid #808080; }
        #news h1 img {
          width: 57px; } }
  #news .btn_news {
    position: absolute;
    top: 12px;
    right: 0;
    width: 68px;
    margin: 0; }
    @media only screen and (max-width: 740px) {
      #news .btn_news {
        width: 50px;
        right: 4%; } }
    #news .btn_news a {
      padding-right: 19px;
      background: url(/img/mv/ico_news_on.png) no-repeat right top;
      color: #fff;
      text-decoration: none; }
      @media only screen and (max-width: 740px) {
        #news .btn_news a {
          padding-right: 16px;
          background: url(/img/mv/ico_news_sp_on.png) no-repeat right top;
          background-size: 12px 12px; } }
    #news .btn_news.is_active a {
      background: url(/img/mv/ico_news.png) no-repeat right top; }
      @media only screen and (max-width: 740px) {
        #news .btn_news.is_active a {
          background: url(/img/mv/ico_news_sp.png) no-repeat right top;
          background-size: 12px 12px; } }
  #news .news_cont {
    float: left;
    margin: 0 80px 0 100px;
    padding: 10px 0;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #news .news_cont {
        float: none;
        margin: 0;
        padding: 2% 4%; } }
  #news dl {
    clear: both;
    margin: 0;
    padding-top: 15px; }
    #news dl:first-child {
      padding-top: 0; }
    #news dl:after {
      content: "";
      clear: both;
      display: block; }
  #news dt {
    float: left;
    width: 100px;
    margin-right: -100px; }
    @media only screen and (max-width: 740px) {
      #news dt {
        width: 80px;
        margin-right: -80px;
        font-size: 10px; } }
  #news dd {
    float: left;
    width: auto;
    margin-left: 100px; }
    @media only screen and (max-width: 740px) {
      #news dd {
        margin-left: 80px;
        font-size: 10px; } }
  #news dd a {
    color: #fff;
    text-decoration: underline;
  }
  #news dd a:hover {
    text-decoration: none;
  }

#contents {
  padding-bottom: 0;
  overflow: hidden; }
  #contents .inner {
    padding: 0;
    width: 100%;
    max-width: none; }
  #contents .section {
    position: relative;
    margin-bottom: 0;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #contents .section {
        cursor: pointer;
        padding: 0;
        width: auto;
        height: 0;
        margin-bottom: 0;
        width: 100%;
        padding-top: 35%; } }

.sec_img {
  position: absolute;
  top: -1000%;
  right: -1000%;
  bottom: -1000%;
  left: -1000%;
  width: 1920px;
  height: 400px;
  margin: auto; }
  @media only screen and (max-width: 740px) {
    .sec_img {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%; }
    .sec_img img {
      position: absolute;
      width: 100%;
      height: auto;
      top: -1000%;
      right: -1000%;
      bottom: -1000%;
      left: -1000%;
      margin: auto; } }

.sec_cont {
  position: relative;
  display: table;
  top: 0;
  width: 980px;
  margin: 0 auto; }
  @media only screen and (max-width: 740px) {
    .sec_cont {
      position: absolute;
      padding: 0 0 0 6%; } }
  @media only screen and (max-width: 740px) {
    .sec_cont p, .sec_cont ul {
      display: none; } }

.sec_cont_inner {
  display: table-cell;
  vertical-align: middle; }

.idx_btn li {
  display: inline-block;
  font-size: 16px; }
  @media only screen and (max-width: 740px) {
    .idx_btn li {
      font-size: 12px; } }
.idx_btn a {
  width: 244px;
  padding: 12px 0;
  border: 3px solid #000;
  text-align: center;
  display: block;
  color: #000;
  -webkit-transition: -webkit-transform 0.3s, all 0.3s;
  -moz-transition: -moz-transform 0.3s, all 0.3s;
  transition: transform 0.3s, all 0.3s;
  }
  .idx_btn a:hover {
    color: #fff;
    background: #000;
    text-decoration: none;
  }
  @media only screen and (max-width: 740px) {
    .idx_btn a {
      width: 144px; } }
.idx_btn.idx_btn_white a {
  color: #fff;
  border-color: #fff; }
  .idx_btn.idx_btn_white a:hover {
    color: #000;
    background: #fff;
  }

#message .sec_img, #message .sec_cont {
  height: 400px; }
  @media only screen and (max-width: 740px) {
    #message .sec_img, #message .sec_cont {
      height: auto; } }
#message h1 small {
  display: block;
  width: 66px;
  height: 10px;
  margin-bottom: 10px;
  background: url(../img/ttl_sub_message.png) no-repeat center center;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }
  @media only screen and (max-width: 740px) {
    #message h1 small {
      width: 33px;
      height: 5px;
      margin-bottom: 5px;
      background-size: 100% 100%; } }
#message h1 span {
  display: block;
  width: 395px;
  height: 32px;
  margin-bottom: 20px;
  background: url(../img/ttl_message.png) no-repeat center center;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }
  @media only screen and (max-width: 740px) {
    #message h1 span {
      width: 119px;
      height: 41px;
      background: url(../img/ttl_message_sp.png) no-repeat center center;
      background-size: 119px 41px;
      margin-bottom: 0; } }
#message .sec_summary {
  width: 700px; }
  @media only screen and (max-width: 740px) {
    #message .sec_summary {
      width: auto; } }

#activity {
  color: #fff; }
  #activity .sec_img, #activity .sec_cont {
    height: 550px; }
    @media only screen and (max-width: 740px) {
      #activity .sec_img, #activity .sec_cont {
        height: auto; } }
  #activity h1 small {
    display: block;
    width: 68px;
    height: 10px;
    margin-bottom: 10px;
    background: url(../img/ttl_sub_activity.png) no-repeat center center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #activity h1 small {
        width: 34px;
        height: 5px;
        margin-bottom: 5px;
        background-size: 100% 100%; } }
  #activity h1 span {
    display: block;
    width: 151px;
    height: 32px;
    margin-bottom: 20px;
    background: url(../img/ttl_activity.png) no-repeat center center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #activity h1 span {
        width: 82px;
        height: 18px;
        background: url(../img/ttl_activity_sp.png) no-repeat center center;
        background-size: 82px 18px;
        margin-bottom: 0; } }

#abrsm .sec_img, #abrsm .sec_cont {
  height: 400px; }
  @media only screen and (max-width: 740px) {
    #abrsm .sec_img, #abrsm .sec_cont {
      height: auto; } }
@media only screen and (max-width: 740px) {
  #abrsm h1 {
    margin: 0 0 -8px 0; } }
#abrsm h1 small {
  display: block;
  width: 99px;
  height: 10px;
  margin-bottom: 10px;
  background: url(../img/ttl_sub_abrsm.png) no-repeat center left;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }
  @media only screen and (max-width: 740px) {
    #abrsm h1 small {
      width: 49.5px;
      height: 5px;
      margin-bottom: 5px;
      background-size: 100% 100%; } }
#abrsm h1 span {
  display: block;
  width: 304px;
  height: 33px;
  margin-bottom: 20px;
  background: url(../img/ttl_abrsm.png) no-repeat center center;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }
  @media only screen and (max-width: 740px) {
    #abrsm h1 span {
      width: 174px;
      height: 38px;
      background: url(../img/ttl_abrsm_sp.png) no-repeat center center;
      background-size: 174px 38px;
      margin: -8px; } }

#master .sec_img, #master .sec_cont {
  height: 400px; }
  @media only screen and (max-width: 740px) {
    #master .sec_img, #master .sec_cont {
      height: auto; } }
#master h1 {
  margin-left: 490px; }
  @media only screen and (max-width: 740px) {
    #master h1 {
      margin: 0 0 -18px 0; } }
  #master h1 small {
    display: block;
    width: 98px;
    height: 10px;
    margin-bottom: 10px;
    background: url(../img/ttl_sub_master.png) no-repeat center center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #master h1 small {
        width: 49px;
        height: 5px;
        margin-bottom: 5px;
        background: url(../img/ttl_sub_master_sp.png) no-repeat center center;
        background-size: 100% 100%; } }
  #master h1 span {
    display: block;
    width: 246px;
    height: 32px;
    margin-bottom: 20px;
    background: url(../img/ttl_master.png) no-repeat center center;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden; }
    @media only screen and (max-width: 740px) {
      #master h1 span {
        width: 182px;
        height: 56px;
        background: url(../img/ttl_master_sp.png) no-repeat center center;
        background-size: 182px 56px;
        margin: -18px; } }
#master .sec_summary {
  margin-left: 490px; }
  @media only screen and (max-width: 740px) {
    #master .sec_summary {
      margin-left: 0; } }
