@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);

/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v13/UyBMtLsHKBKXelqf4x7VRQ.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v13/1YwB1sO8YE1Lyjf12WNiUA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 500;
  src: local('Lato Bold'), local('Lato-Bold'), url(https://fonts.gstatic.com/s/lato/v13/ObQr5XYcoH0WBoUxiaYK3_Y6323mHUZFJMgTvxaG2iE.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 500;
  src: local('Lato Bold'), local('Lato-Bold'), url(https://fonts.gstatic.com/s/lato/v13/H2DMvhDLycM56KNuAtbJYA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}

/* 一時非表示 */
/*.keiei4{
  display: none;
}
.sidebar-slide > .keiei4{
  display: block;
}*/

/* 個別非表示 */
.efforts97,
.public1792,
.advertisement1432,
.visitor1758{
  display: none;
}
.c3-976,
body.news.news-detail .title-breads .date-category-area .category .cat-name.c2-438,
body.news.news-detail .title-breads .date-category-area .category .cat-name.c3-960,
body.news.news-detail .title-breads .date-category-area .category .cat-name.c3-961{
  display: none;
}
body.event.news-detail .title-breads .date-category-area .category .cat-name.c2-50,
body.event.news-detail .title-breads .date-category-area .category .cat-name.c3-59,
body.event.news-detail .title-breads .date-category-area .category .cat-name.c3-60{
  display: none;
}

/* 専大スポーツ(SPORTS) サムネイル NO IMAGE設定 */
.info-thumb.c2-15{ background-image: url(/albums/abm00007164.svg); } /* ローラースケート */
.info-thumb.c2-16{ background-image: url(/albums/abm00007165.svg); } /* ローバースカウト */
.info-thumb.c2-17{ background-image: url(/albums/abm00007180.svg); } /* レスリング */
.info-thumb.c2-18{ background-image: url(/albums/abm00007135.svg); } /* 陸上競技 */
.info-thumb.c2-19{ background-image: url(/albums/abm00007167.svg); } /* ラグビー */
.info-thumb.c2-20{ background-image: url(/albums/abm00007181.svg); } /* ヨット */
.info-thumb.c2-21{ background-image: url(/albums/abm00013882.svg); } /* 野球  */
.info-thumb.c2-22{ background-image: url(/albums/abm00007139.svg); } /* ボディビル */
.info-thumb.c2-23{ background-image: url(/albums/abm00007152.svg); } /* ホッケー  */
.info-thumb.c2-24{ background-image: url(/albums/abm00007141.svg); } /* ボクシング */
.info-thumb.c2-25{ background-image: url(/albums/abm00007140.svg); } /* ボウリング */
.info-thumb.c2-26{ background-image: url(/albums/abm00007146.svg); } /* フェンシング */
.info-thumb.c2-27{ background-image: url(/albums/abm00007147.svg); } /* フィギュアスケート */
.info-thumb.c2-28{ background-image: url(/albums/abm00007151.svg); } /* ハンドボール */
.info-thumb.c2-29{ background-image: url(/albums/abm00007178.svg); } /* バレーボール */
.info-thumb.c2-30{ background-image: url(/albums/abm00013881.svg); } /* バドミントン */
.info-thumb.c2-31{ background-image: url(/albums/abm00007138.svg); } /* バスケットボール */
.info-thumb.c2-32{ background-image: url(/albums/abm00007145.svg); } /* 馬術 */
.info-thumb.c2-33{ background-image: url(/albums/abm00007155.svg); } /* 日本拳法 */
.info-thumb.c2-34{ background-image: url(/albums/abm00007177.svg); } /* 東洋伝拳法 */
.info-thumb.c2-35{ background-image: url(/albums/abm00007176.svg); } /* テニス  */
.info-thumb.c2-36{ background-image: url(/albums/abm00007175.svg); } /* 卓球 */
.info-thumb.c2-37{ background-image: url(/albums/abm00007150.svg); } /* 体操 */
.info-thumb.c2-38{ background-image: url(/albums/abm00007171.svg); } /* ソフトテニス */
.info-thumb.c2-39{ background-image: url(/albums/abm00007166.svg); } /* 漕艇 */
.info-thumb.c2-40{ background-image: url(/albums/abm00007142.svg); } /* カヌー */
.info-thumb.c2-41{ background-image: url(/albums/abm00007173.svg); } /* 相撲  */
.info-thumb.c2-42{ background-image: url(/albums/abm00007172.svg); } /* スピードスケート */
.info-thumb.c2-43{ background-image: url(/albums/abm00007170.svg); } /* スキー  */
.info-thumb.c2-44{ background-image: url(/albums/abm00007174.svg); } /* 水泳 */
.info-thumb.c2-45{ background-image: url(/albums/abm00007169.svg); } /* 少林寺拳法 */
.info-thumb.c2-47{ background-image: url(/albums/abm00013882.svg); } /* 準硬式野球 */
.info-thumb.c2-48{ background-image: url(/albums/abm00007156.svg); } /* 柔道 */
.info-thumb.c2-49{ background-image: url(/albums/abm00007168.svg); } /* 射撃 */
.info-thumb.c2-50{ background-image: url(/albums/abm00007136.svg); } /* 自動車  */
.info-thumb.c2-51{ background-image: url(/albums/abm00007161.svg); } /* 山岳  */
.info-thumb.c2-52{ background-image: url(/albums/abm00007148.svg); } /* サッカー */
.info-thumb.c2-53{ background-image: url(/albums/abm00007149.svg); } /* ゴルフ */
.info-thumb.c2-54{ background-image: url(/albums/abm00007158.svg); } /* 剣道 */
.info-thumb.c2-55{ background-image: url(/albums/abm00007160.svg); } /* 弓道 */
.info-thumb.c2-56{ background-image: url(/albums/abm00007157.svg); } /* 空手 */
.info-thumb.c2-57{ background-image: url(/albums/abm00007153.svg); } /* 居合道 */
.info-thumb.c2-58{ background-image: url(/albums/abm00007133.svg); } /* アメリカンフットボール  */
.info-thumb.c2-59{ background-image: url(/albums/abm00007154.svg); } /* アイスホッケー */
.info-thumb.c2-60{ background-image: url(/albums/abm00007132.svg); } /* 合気道 */
.info-thumb.c2-61{ background-image: url(/albums/abm00007134.svg); } /* アーチェリー  */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, main, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
table, caption, tbody, tfoot, thead, tr, th, td {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
}
body {
  overflow-y:scroll;
  overflow-x: hidden;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,main,menu,nav,section { 
  display:block;
}
blockquote, q {
  quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}
a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}
mark {
  background-color:#ff9;
  color:#000; 
  font-style:italic;
  font-weight:bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}
table {
  border-collapse:collapse;
  border-spacing:0;
  background-color: #fff;
}
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}
input, select {
  vertical-align:middle;
}
select::-ms-expand {
  display: none;
}
img {
  vertical-align: top;
  outline: none;
  border: none;
  max-width: 100%;
  height: auto;
}
/* IE対応 */
img[src$=".svg"] {
  width: 100%;
}
ul,ol{
  list-style: none;
}
strong{
  font-weight: 600;
}
select,input[type=radio],input[type=checkbox]{
  cursor: pointer;
}

/* 拡張子
***************************/
/* 外部リンク */
.has-icon.is-target::after {
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-left: 6px;
  width: 12px;
  height: 12px;
  overflow: hidden;
  background: url(/albums/abm00000041.svg) no-repeat left top;
}
.senshu-online .has-icon.is-target::after{
  content: none;
}
.login-list .has-icon.is-target::after,
.megadrop-lists .has-icon.is-target::after,
.indexmenu-lists .has-icon.is-target::after,
.breads-lists .has-icon.is-target::after,
.special-feature-icons li .has-icon.is-target::after,
.top-foot-nav .has-icon.is-target:hover::after{
  background: url(/albums/abm00000042.svg) no-repeat left top;
}
.login-list .has-icon.is-pdf::after,
.megadrop-lists .has-icon.is-pdf::after,
.indexmenu-lists .has-icon.is-pdf::after,
.breads-lists .has-icon.is-pdf::after,
.special-feature-icons li .has-icon.is-pdf::after,
.top-foot-nav .has-icon.is-pdf:hover::after{
  background: url(/albums/abm00014530.svg) no-repeat left top;
}

.has-icon.is-pdf:after {
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-top: -5px;
  margin-left: 6px;
  width: 16px;
  height: 18px;
  overflow: hidden;
  vertical-align: middle;
  background: url(/albums/abm00000060.svg) no-repeat left top;
}
.has-icon.is-doc:after {
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-top: -5px;
  margin-left: 6px;
  width: 16px;
  height: 18px;
  overflow: hidden;
  vertical-align: middle;
  background: url(/albums/abm00000076.svg) no-repeat left top;
}
.has-icon.is-xls:after {
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-top: -5px;
  margin-left: 6px;
  width: 16px;
  height: 18px;
  overflow: hidden;
  vertical-align: middle;
  background: url(/albums/abm00000039.svg) no-repeat left top;
}
.has-icon.is-txt:after {
  content: '';
  position: relative;
  top: 0;
  display: inline-block;
  margin-top: -5px;
  margin-left: 6px;
  width: 16px;
  height: 18px;
  overflow: hidden;
  vertical-align: middle;
  background: url(/albums/abm00010829.svg) no-repeat left top;
}

/* 基本
***************************/
*,*::before,*::after{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html{
  font-size: 62.5%;
  line-height: 2;
}
body {
  font-family: Lato, "Noto Sans Japanese", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 300;
  color: #333;
  -webkit-text-size-adjust: 100%;
}
input, select, textarea, button{
  font-family: Lato, "Noto Sans Japanese", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 300;
  color: #333;
}
a{
  color: #333;
  text-decoration: none;
}
a:hover{
  text-decoration: underline;
}
.main a{
  text-decoration: underline;
}
.main a:hover{
  text-decoration: none;
}
.main .senon-index-topics a,
.main .information-area a,
.main .events-area a{
  text-decoration: none;
}
.main .senon-index-topics a:hover,
.main .information-area a:hover,
.main .events-area a:hover{
  text-decoration: underline;
}

.clearfix::after{
  content: "";
  display: block;
  clear: both;
}


/* 共通
***************************/
.container{
  padding-top: 60px;
  overflow: hidden;
}
.container-inner{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}
.container .main > *:last-child,
.container-inner > *:last-child {
  margin-bottom: 0;
  padding-bottom: 150px;
}
.container .main > .cp-wp:last-child,
.container-inner > .cp-wp:last-child {
  margin-bottom: 150px;
  padding-bottom: 30px;
}
@media screen and (max-width: 959px) {
  .container .main > *:last-child,
  .container-inner > *:last-child {
    padding-bottom: 80px;
  }
  .container .main > .cp-wp:last-child,
  .container-inner > .cp-wp:last-child {
    margin-bottom: 80px;
  }
  .container .main > .table-scroll-x:last-child {
    padding-bottom: 0;
    margin-bottom: 80px;
  }
  .container-inner{
    padding: 0 4%;
  }
}

/* ヘッダー
***************************/
.head-top{
  position: relative;
  z-index: 200;
}
.head-top .outer{
  background: #f6f6f9;
}
.head-top .left{
  float: left;
  display: table;
}
.head-top .left > ul > li{
  display: table-cell;
  padding: 0 8px;
  vertical-align: middle;
  font-size: 12px;
  font-size: 1.2rem;
}
.head-top .left .home,
.head-top .left .login,
.head-top .left .pin{
  padding: 0;
}
.head-top .home > a{
  display: block;
  width: 44px;
  height: 44px;
  padding: 23px 0 0 0;
  text-align: center;
  background: url(/albums/abm00000044.svg) no-repeat center 12px #333;
  background-size: 12px 9px;
  font-size: 10px;
  font-size: 1rem;
  color: #fff;
}
.head-top .home > a::after{
  content: none !important;
}
.head-top .login > a{
  display: block;
  width: 44px;
  height: 44px;
  padding: 23px 0 0 0;
  text-align: center;
  background: url(/albums/abm00000057.svg) no-repeat center 12px #333;
  background-size: 10px 10px;
  font-size: 10px;
  font-size: 1rem;
  color: #fff;
}
.head-top .login > a.active{
  text-decoration: underline;
}
.head-top .pin > a{
  display: block;
  width: 44px;
  height: 44px;
  margin-right: 8px;
  padding: 23px 0 0 0;
  text-align: center;
  background: url(/albums/abm00000065.svg) no-repeat center 12px #333;
  background-size: 11px 13px;
  font-size: 10px;
  font-size: 1rem;
  color: #fff;
}
.head-top .pin > a.active{
  text-decoration: underline;
}
.head-top .right{
  float: right;
  display: table;
}
.head-top .right > ul > li{
  display: table-cell;
  vertical-align: middle;
  padding: 0 9px;
  font-size: 13px;
  font-size: 1.3rem;
}
.head-top .access a::before{
  content: "";
  display: inline-block;
  width: 14px;
  height: 17px;
  margin-top: -2px;
  margin-right: 4px;
  vertical-align: middle;
  background: url(/albums/abm00000036.svg) no-repeat left top;
  background-size: 14px 17px;
}
.head-top .contact a::before{
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-top: -2px;
  margin-right: 4px;
  vertical-align: middle;
  background: url(/albums/abm00000046.svg) no-repeat left top;
  background-size: 14px 14px;
}
.head-top .request a::before{
  content: "";
  display: inline-block;
  width: 14px;
  height: 13px;
  margin-top: -2px;
  margin-right: 4px;
  vertical-align: middle;
  background: url(/albums/abm00000061.svg) no-repeat left top;
  background-size: 14px 13px;
}
.head-top .contribution a::before{
  content: "";
  display: inline-block;
  width: 14px;
  height: 13px;
  margin-top: -2px;
  margin-right: 4px;
  vertical-align: middle;
  background: url(/albums/abm00000052.svg) no-repeat left top;
  background-size: 14px 13px;
}
.head-top .right .search,
.head-top .right .language,
.head-top .right .sns,
.head-top .right .menu-button{
  padding: 0;
}
.head-top .search > a{
  position: relative;
  display: block;
  width: 44px;
  height: 44px;
  margin-left: 9px;
  padding: 13px 0 0 12px;
  background-color: #333;
  -webkit-transition: background-color 0.2s;
  -o-transition: background-color 0.2s;
  transition: background-color 0.2s;
}
.head-top .search > a:hover{
  background-color: #008E48;
}
.head-top .search a span{
  position: absolute;
  display: inline-block;
  opacity: 0;
  width: 22px;
  height: 2px;
  background-color: #fff;
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.head-top .search a span:nth-child(1){
  -webkit-transform: translateY(8px) rotate(45deg);
  -ms-transform: translateY(8px) rotate(45deg);
      transform: translateY(8px) rotate(45deg);
}
.head-top .search a span:nth-child(2){
  -webkit-transform: translateY(8px) rotate(-45deg);
  -ms-transform: translateY(8px) rotate(-45deg);
      transform: translateY(8px) rotate(-45deg);
}
.head-top .search a img{
  position: absolute;
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.head-top .search a.active{
  background-color: #008E48;
}
.head-top .search a.active span{
  opacity: 1;
}
.head-top .search a.active img{
  opacity: 0;
}
.head-top .search a img{
  width: 17px;
  height: 17px;
}
.head-top .language > a{
  display: block;
  width: 44px;
  height: 44px;
  padding: 5px 0 0 0;
  text-align: center;
  background-color: #333;
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 600;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.head-top .language a:hover{
  text-decoration: none;
  background-color: #008E48;
}
.head-top .sns a{
  display: block;
  width: 44px;
  height: 44px;
  padding: 13px 0 0 14px;
  background-color: #333;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.head-top .sns a:hover{
  background-color: #008E48;
}
.head-top .sns > a img{
  width: 14px;
  height: 17px;
}
.head-top .menu-button a{
  display: block;
  width: 44px;
  height: 44px;
  padding: 7px 11px 0 11px;
  background-color: #333;
  line-height: 6px;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.head-top .menu-button a span{
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
.head-top .menu-button a:hover,
.head-top .menu-button a.active{
  background-color: #008E48;
}
.head-top .menu-button a.active span:nth-child(1){
  -webkit-transform: translateY(8px) rotate(45deg);
  -ms-transform: translateY(8px) rotate(45deg);
      transform: translateY(8px) rotate(45deg);
}
.head-top .menu-button a.active span:nth-child(2){
  opacity: 0;
}
.head-top .menu-button a.active span:nth-child(3){
  -webkit-transform: translateY(-8px) rotate(-45deg);
  -ms-transform: translateY(-8px) rotate(-45deg);
      transform: translateY(-8px) rotate(-45deg);
}

.head-bottom{
  position: relative;
  z-index: 140;
  background-color: #fff;
}
.head-bottom .outer{
  display: table;
  width: 100%;
}
.head-bottom .logo{
  display: table-cell;
  width: 100%;
  padding: 0 40px;
  vertical-align: middle;
}
.head-bottom .logo img{
  width: 170px;
  height: 55px;
}
.head-bottom .g-nav{
  display: table-cell;
  vertical-align: middle;
  white-space: nowrap;
}
.head-bottom .g-nav ul{
  display: table;
  margin: 0 0 0 auto;
}
.head-bottom .g-nav ul li{
  display: table-cell;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
  vertical-align: bottom;
}
.head-bottom .g-nav ul li:first-child{
  padding-left: 0;
}
.head-bottom .g-nav ul li.empty{
  padding: 0 10px;
}
.head-bottom .g-nav ul li a{
  position: relative;
  display: block;
  height: 90px;
  padding: 32px 20px 0 20px;
  overflow: hidden;
}
.head-bottom .g-nav ul li.senshuonline2 a{
  padding: 30px 20px 0 20px;
  font-size: 17px;
  font-size: 1.7rem;
}
.head-bottom .g-nav ul li a::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: calc(100% - 20px);
  min-width: 52px;
  background-color: #333;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
  
  height: 0;
  opacity: 0;
}
.head-bottom .g-nav ul li a.active,
.head-bottom .g-nav ul li a:hover{
  text-decoration: none;
}
.head-bottom .g-nav ul li a.nav-active::before,
.head-bottom .g-nav ul li a.active::before,
.head-bottom .g-nav ul li a:hover::before{
  height: 4px;
  opacity: 1;
}
.head-bottom .sp-button{
  display: none;
}

@media screen and (max-width: 1279px) {
  .head-top{
    display: none;
  }
  
  .head-bottom .logo{
    width: auto;
    padding: 0 4%;
  }
  .head-bottom .g-nav{
    display: none;
  }
  .head-bottom .sp-button{
    display: table-cell;
    padding-right: 4%;
    vertical-align: middle;
  }
  .head-bottom .sp-button ul{
    display: table;
    height: 90px;
    margin: 0 0 0 auto;
    padding-top: 24px;
  }
  .head-bottom .sp-button ul li{
    display: table-cell;
    vertical-align: top;
  }
  .head-bottom .sp-button-search a{
    display: block;
    position: relative;
    padding: 11px 11px 6px 12px;
  }
  .head-bottom .sp-button-search a span{
    position: absolute;
    left: 10px;
    display: inline-block;
    opacity: 0;
    width: 24px;
    height: 3px;
    background-color: #333;
    -webkit-transition: opacity 0.2s;
    -o-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .head-bottom .sp-button-search a span:nth-child(1){
    -webkit-transform: translateY(9px) rotate(45deg);
    -ms-transform: translateY(9px) rotate(45deg);
        transform: translateY(9px) rotate(45deg);
  }
  .head-bottom .sp-button-search a span:nth-child(2){
    -webkit-transform: translateY(9px) rotate(-45deg);
    -ms-transform: translateY(9px) rotate(-45deg);
        transform: translateY(9px) rotate(-45deg);
  }
  .head-bottom .sp-button-search a img{
    width: 21px;
    height: 20px;
  }
  .head-bottom .sp-button-search a.active span{
    opacity: 1;
  }
  .head-bottom .sp-button-search a.active img{
    opacity: 0;
  }
  .head-bottom .sp-button-nav{
    padding-left: 8px;
  }
  .head-bottom .sp-button-nav a{
    position: relative;
    display: block;
    width: 44px;
    height: 44px;
    padding: 10px 0px 10px 0;
  }
  .head-bottom .sp-button-nav span{
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    display: inline-block;
    width: 25px;
    height: 3px;
    background-color: #333;
  }
  .head-bottom .sp-button-nav a span:nth-child(1){
    position: absolute;
    left: 10px;
    top: 11px;
  }
  .head-bottom .sp-button-nav a span:nth-child(2){
    position: absolute;
    left: 10px;
    top: 20px;
  }
  .head-bottom .sp-button-nav a span:nth-child(3){
    position: absolute;
    left: 10px;
    top: 29px;
  }
  .head-bottom .sp-button-nav a.active span:nth-child(1){
    -webkit-transform: translateY(9px) rotate(45deg);
    -ms-transform: translateY(9px) rotate(45deg);
        transform: translateY(9px) rotate(45deg);
  }
  .head-bottom .sp-button-nav a.active span:nth-child(2){
    opacity: 0;
  }
  .head-bottom .sp-button-nav a.active span:nth-child(3){
    -webkit-transform: translateY(-9px) rotate(-45deg);
    -ms-transform: translateY(-9px) rotate(-45deg);
        transform: translateY(-9px) rotate(-45deg);
  }
  
  .sns-list{
    display: none;
  }
}
@media screen and (max-width: 639px) {
  .head-bottom .sp-button-nav {
    padding-left: 0;
  }
}

/* ハンバーガーメニュー
***************************/
.indexmenu-lists {
  position: absolute;
  width: 100%;
  left: 0;
  top: 44px;
  z-index: 145;
  padding: 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  background-color: #333;
  color: #fff;
}
.indexmenu-lists.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}
.sp-indexmenu-top{
  display: none;
}
.indexmenu-lists > div{
  margin-top: -41px;
}
.indexmenu-lists > div a{
  display: inline-block;
  color: #fff;
}
.indexmenu-lists .menu-head-outer{
  width: 100%;
  max-width: 1800px;
  margin: 0 auto 51px auto;
  padding: 0 100px;
}
.indexmenu-lists .mega-head-outer{
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 100px;
}
.indexmenu-lists .outer{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
  padding: 20px 100px;
}
.indexmenu-lists .mega-list{
  display: none;
  width: calc( (100% - 90px) / 4 );
  margin: 0 0 61px 30px;
  line-height: 1.4;
}
.indexmenu-lists .mega-list:nth-child(4n+1){
  margin-left: 0;
}
.indexmenu-lists .mega-list > ul > li,
.indexmenu-lists .mega-list > div > ul > li{
  position: relative;
}
.indexmenu-lists .mega-list > ul > li a,
.indexmenu-lists .mega-list > div > ul > li a{
  padding: 5px 0 5px 34px;
}
.indexmenu-lists .mega-head a,
.indexmenu-lists .head a{
  display: inline-block;
}
.indexmenu-lists .menu-head{
  font-size: 20px;
  font-size: 2rem;
}
.indexmenu-lists .mega-head{
  position: relative;
  padding: 15px 0 15px 34px;
  border-top: 1px solid #5C5C5C; 
  border-bottom: 1px solid #5C5C5C;
  font-weight: 600;
}
.indexmenu-lists .mega-head .button{
  position: absolute;
  top: 18px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.indexmenu-lists .mega-head .button::before{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.indexmenu-lists .mega-head .button::after{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}
.indexmenu-lists .mega-head.active .button::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.indexmenu-lists .gm-li3 > .head {
  padding: 5px 0 5px 34px;
  position: relative;
  font-weight: 600;
}
.indexmenu-lists .gm-li3 > .head a {
  padding: 0;
}
.indexmenu-lists .head .button{
  position: absolute;
  top: 3px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.indexmenu-lists .head .button::before{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.indexmenu-lists .head .button::after{
  content: "";
  position: absolute;
  top: 11px;
  left: 6px;
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}
.indexmenu-lists .head.active .button::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.indexmenu-lists .sp-login-list,
.indexmenu-lists .sp-visitor-list,
.indexmenu-lists .sp-pin-list,
.indexmenu-lists .sp-sns-list{
  display: none;
}
.indexmenu-lists .head + ul{
  display: none;
}
.indexmenu-lists .gm-li2 > a {
  font-weight: 600;
}
@media screen and (max-width: 1279px) {
  .sp-indexmenu-top{
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  .sp-indexmenu-top > li{
    position: relative;
    z-index: 160;
    background-color: #008E48;
    display: table-cell;
    border-left: 1px solid #006A36;
  }
  .sp-indexmenu-top > li:first-child{
    border-left: none;
  }
  .sp-indexmenu-top > li a{
    display: block;
    height: 50px;
    padding: 13px 0 0 0;
    text-align: center;
    color: #fff;
  }
  .sp-indexmenu-top li.login a::before{
    content: "";
    display: inline-block;
    width: 12px;
    height: 9px;
    margin-top: -2px;
    margin-right: 10px;
    background: url(/albums/abm00000057.svg) no-repeat center center transparent;
    background-size: 12px 9px;
    vertical-align: middle;
  }
  .sp-indexmenu-top li.visitor a::before{
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-top: -2px;
    margin-right: 10px;
    background: url(/albums/abm00000075.svg) no-repeat center center transparent;
    background-size: 12px 12px;
    vertical-align: middle;
  }
  .sp-indexmenu-top li.pin a::before{
    content: "";
    display: inline-block;
    width: 11px;
    height: 13px;
    margin-top: -2px;
    margin-right: 10px;
    background: url(/albums/abm00000065.svg) no-repeat center center transparent;
    background-size: 11px 13px;
    vertical-align: middle;
  }
  .sp-indexmenu-top li.sns a img{
    width: 12px;
    height: 13px;
    margin-top: -2px;
    margin-right: 10px;
    vertical-align: middle;
  }
  .sp-indexmenu-top li.sns a::after{
    content: "SNS";
  }
  .indexmenu-lists .sp-login-list{
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    margin-top: 0;
    padding: 0 4%;
    border-bottom: 1px solid #5C5C5C;
  }
  .indexmenu-lists .sp-login-list a{
    color: #fff;
  }
  .indexmenu-lists .sp-login-list .head{
    margin-top: 20px;
    margin-bottom: 6px;
    padding: 0 0 0 18px;
    font-weight: 600;
    color: #008E48;
    background: url(/albums/abm00000074.svg) center left no-repeat;
    background-size: 13px 13px;
  }
  .indexmenu-lists .sp-login-list .head::before,
  .indexmenu-lists .sp-login-list .head::after{
    content: none;
  }
  .indexmenu-lists .sp-login-list ul{
    display: block;
  }
  .indexmenu-lists .sp-login-list ul:last-child{
    margin-bottom: 20px;
  }
  .indexmenu-lists .sp-login-list ul li{
    padding-left: 18px;
  }
  .indexmenu-lists .sp-login-list .list-item > br{
    display: none;
  }
  
  .indexmenu-lists .sp-visitor-list{
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    margin-top: 0;
    padding: 20px 4%;
    border-bottom: 1px solid #5C5C5C;
  }
  .indexmenu-lists .sp-visitor-list a{
    color: #fff;
  }
  .indexmenu-lists .sp-visitor-list .head{
    padding: 0;
    font-weight: 300;
  }
  .indexmenu-lists .sp-visitor-list .gm-li2 > a{
    font-weight: 300;
  }
  
  .indexmenu-lists .sp-pin-list{
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    margin-top: 0;
    border-bottom: 1px solid #5C5C5C;
  }
  .indexmenu-lists .sp-pin-list .pin-list-tab li{
    text-align: center;
    font-size: 20px;
    font-size: 2rem;
  }
  .indexmenu-lists .sp-pin-list .pin-list-tab-pin::before{
    width: 40px;
    height: 40px;
    background-size: 15px 17px;
  }
  .indexmenu-lists .sp-pin-list .pin-list-tab-history::before{
    width: 40px;
    height: 40px;
    background-size: 18px 19px;
  }
  .indexmenu-lists .sp-sns-list{
    position: relative;
    top: 0;
    right: 0;
    width: 100%;
    z-index: 1;
    margin-top: 0;
    border-bottom: 1px solid #5C5C5C;
  }
  .indexmenu-lists .sp-sns-list ul{
    width: 33.3333%;
    margin: 0 0 0 auto;
    background: #333;
  }
  .indexmenu-lists .sp-sns-list ul li{
    border-top: 1px solid #5C5C5C;
  }
  .indexmenu-lists .sp-sns-list ul li:first-child{
    border-top: none;
  }
  .indexmenu-lists .sp-sns-list ul li a{
    display: block;
    padding: 24px 0;
    text-align: center;
    vertical-align: middle;
  }
  .indexmenu-lists .sp-sns-list ul li.facebook a img{
    display: block;
    width: 36px;
    margin: 7px auto;
  }
  .indexmenu-lists .sp-sns-list ul li.twitter a img{
    display: block;
    width: 50px;
    margin: 0 auto;
  }
  
  .indexmenu-lists {
    top: 90px;
    z-index: 135;
    padding: 0;
  }
  .indexmenu-lists .mega-head a{
    margin-left: 34px;
  }
  .indexmenu-lists .mega-head-outer{
    padding: 0;
  }
  .indexmenu-lists .mega-head{
    padding: 15px 4% 15px 4%;
  }
  .indexmenu-lists .mega-head .button{
    left: 4%;
  }
  
  .indexmenu-lists .menu-head-outer{
    padding: 0;
  }
  .indexmenu-lists .menu-head{
    margin-top: 30px;
    padding: 0 4%;
  }
  .indexmenu-lists .outer{
    display: block;
    padding: 20px 4%;
  }
  .indexmenu-lists .mega-list{
    width: 100%;
    margin: 0;
  }
  .indexmenu-lists .mega-list:last-child{
    margin-bottom: 41px;
  }
  .indexmenu-lists .close{
    padding: 7px 4%;
  }
  .indexmenu-lists .close a{
    position: relative;
    display: block;
    width: 44px;
    height: 44px;
    margin: 0 0 0 auto;
    padding: 10px 0;
  }
  .indexmenu-lists .close a span{
    position: absolute;
    top: 12px;
    left: 10px;
    display: inline-block;
    width: 25px;
    height: 3px;
    background-color: #fff;
  }
  .indexmenu-lists .close a span:nth-child(1){
    -webkit-transform: translateY(8px) rotate(45deg);
    -ms-transform: translateY(8px) rotate(45deg);
        transform: translateY(8px) rotate(45deg);
  }
  .indexmenu-lists .close a span:nth-child(2){
    -webkit-transform: translateY(8px) rotate(-45deg);
    -ms-transform: translateY(8px) rotate(-45deg);
        transform: translateY(8px) rotate(-45deg);
  }
}
@media screen and (max-width: 639px) {
  .sp-indexmenu-top .pin-list-content-pin li .thumb{
    float: none;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    margin: 0 auto 10px auto;
  }
}

/* メガドロップ
***************************/
.megadrop-lists > div {
  position: absolute;
  width: 100%;
  left: 0;
  top: 134px;
  z-index: 110;
  padding: 40px 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  background-color: #333;
  color: #fff;
}
.megadrop-lists > div.active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}
.megadrop-lists > div a{
  display: inline-block;
  color: #fff;
}
.megadrop-lists .menu-head-outer{
  width: 100%;
  max-width: 1800px;
  margin: 0 auto 10px auto;
  padding: 0 100px;
}
.megadrop-lists .mega-head-outer{
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 100px;
}
.megadrop-lists .outer{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
  padding: 20px 100px;
}
.megadrop-lists .mega-list{
  display: none;
  width: calc( (100% - 90px) / 4 );
  margin: 0 0 0 30px;
  line-height: 1.4;
}
.megadrop-lists .mega-list:nth-child(4n+1){
  margin-left: 0;
}
.megadrop-lists .mega-list > div > ul li,
.megadrop-lists .mega-list > ul li{
  position: relative;
}
.megadrop-lists .mega-head a{
  display: inline-block;
}
.megadrop-lists .menu-head{
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
}
.megadrop-lists .mega-head{
  position: relative;
  padding: 15px 0 15px 34px;
  border-top: 1px solid #5C5C5C; 
  border-bottom: 1px solid #5C5C5C;
  font-weight: 600;
}
.megadrop-lists .mega-head .button{
  position: absolute;
  top: 18px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.megadrop-lists .gm-li3 > .head {
  position: relative;
  font-weight: 600;
}
.megadrop-lists .mega-list > ul > li a,
.megadrop-lists .mega-list > div > ul > li a {
  padding: 5px 0 5px 34px;
}
.megadrop-lists .head .button{
  position: absolute;
  top: 3px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.megadrop-lists .mega-head .button::before,
.megadrop-lists .head .button::before{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}
.megadrop-lists .mega-head .button::after,
.megadrop-lists .head .button::after{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.megadrop-lists .mega-head.active .button::after,
.megadrop-lists .head.active .button::after{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.megadrop-lists .head + ul{
  display: none;
}
.megadrop-lists .gm-li2 > a{
  font-weight: 600;
}
@media screen and (max-width: 1279px) {
  .megadrop-lists{
    display: none;
  }
}

/* ヘッダークリックコンテンツ
***************************/
.login-list{
  position: absolute;
  z-index: 150;
  top: 44px;
  left: 0;
  right: 0;
  width: 100%;
  padding: 25px 50px 35px 50px;
  background-color: #333;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
}
.login-list.active{
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}
.login-list .list-item{
  float: left;
  width: auto;
  margin-right: 30px;
}
.login-list .list-item:last-child{
  margin-right: 0;
}
.login-list .list-item ul{
  display: inline-block;
  margin-right: 15px;
  vertical-align: top;
}
.login-list .list-item ul:last-child{
  margin-right: 0;
}
.login-list .list-item > br{
  display: none;
}
.login-list .head{
  margin-bottom: 6px;
  padding-left: 18px;
  font-weight: 600;
  color: #008E48;
  background: url(/albums/abm00000074.svg) center left no-repeat;
  background-size: 13px 13px;
}
.login-list li{
  padding-left: 18px;
}
.login-list li a{
  color: #fff;
}

.pin-list{
  position: absolute;
  z-index: 150;
  top: 0;
  bottom: 0;
  left: 0;
  width: 400px;
  height: calc(100vh);
  padding: 44px 0 0 0;
  background-color: #222;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
      transform: translateX(-100%);
}
.pin-list.active{
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
      transform: translateX(0);
}

.pin-list-tab{
  display: table;
  width: 100%;
  background-color: #222;
}
.pin-list-tab li{
  display: table-cell;
  width: 50%;
  padding: 20px 15px;
  background-color: #222;
  opacity: 0.4;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  font-size: 24px;
  font-size: 2.4rem;
  color: #008E48;
  cursor: pointer;
}
.pin-list-tab li:hover,
.pin-list-tab li.select{
  background-color: #333;
  opacity: 1;
  -webkit-filter: grayscale(0%);
          filter: grayscale(0%);
}
.pin-list-tab-pin::before{
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin-top: -3px;
  margin-right: 10px;
  border: 1px solid #ccc;
  border-radius: 50%;
  vertical-align: middle;
  background: url(/albums/abm00000065.svg) center center no-repeat transparent;
  background-size: 22px 26px;
  -webkit-filter: brightness(50%);
          filter: brightness(50%);
}
.pin-list-tab-history::before{
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  margin-top: -3px;
  margin-right: 10px;
  border: 1px solid #ccc;
  border-radius: 50%;
  vertical-align: middle;
  background: url(/albums/abm00000043.svg) center center no-repeat transparent;
  background-size: 24px 28px;
  -webkit-filter: brightness(66%);
          filter: brightness(66%);
}
.pin-list-tab-pin:hover::before,
.pin-list-tab-history:hover::before,
.pin-list-tab-pin.select::before,
.pin-list-tab-history.select::before{
  background-color: #008E48;
  border-color: transparent;
  -webkit-filter: brightness(100%);
          filter: brightness(100%);
}
.pin-list-content ul{
  background: #333;
  padding: 0;
}
.pin-list-content ul.hide{
  display:none;
}
.pin-list-content ul li{
  border-top: 1px solid #222;
}
.pin-list-content ul li a{
  color: #fff;
}
.pin-list-content-pin li{
  padding: 20px;
}
.pin-list-content-pin li::after{
  content: "";
  display: block;
  clear: both;
}
.pin-list-content-pin li .thumb{
  float: left;
  width: 140px;
  height: 84px;
  margin-right: 10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.pin-list-content-pin li .date{
  margin-bottom: 5px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  color: #008E48;
}
.pin-list-content-pin li .date span{
  margin-left: 6px;
  margin-left: 0.6rem;
}
.pin-list-content-pin li .date span:first-child{
  margin-left: 0;
}
.pin-list-content-pin li .title{
  overflow: hidden;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
}
.pin-list-content-history li{
  padding: 16px 20px;
}
.pin-list-content-history li .date{
  font-size: 12px;
  font-size: 1.2rem;
  color: #008E48;
}
.pin-list-content-history li .title{
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

span.pin a{
  display: block;
  width: 14px;
  height: 17px;
  background: url(/albums/abm00000063.svg) center center no-repeat;
  background-size: cover;
}
span.pin a.checked{
  -webkit-animation: pin 0.34s ease;
          animation: pin 0.34s ease;
}
@keyframes pin{
  from, to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  20%, 80% {
    -webkit-transform: translate3d(0, -1px, 0);
    transform: translate3d(0, -1px, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 3px, 0);
  }
}
@-webkit-keyframes pin{
  from, to {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }
  20%, 80% {
    -webkit-transform: translate3d(0, -1px, 0);
    transform: translate3d(0, -1px, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 3px, 0);
  }
}
span.pin a img{
  width: 14px;
  height: 17px;
  opacity: 0;
  -webkit-transition: opacity 0.34s;
  -o-transition: opacity 0.34s;
  transition: opacity 0.34s;
}
span.pin a.checked img{
  opacity: 1;
}

.search-area{
  position: absolute;
  z-index: 150;
  top: 44px;
  left: 0;
  right: 0;
  width: 100%;
  background-color: #008E48;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  color: #fff;
}
.search-area.active{
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}
.search-area-inner{
  display: table;
  width: 1200px;
  margin: 0 auto;
  padding: 35px 0;
}
.search-area .mascot{
  display: table-cell;
  width: 148px;
  vertical-align: middle;
  text-align: center;
}
.search-area form{
  display: table-cell;
  vertical-align: middle;
}
.search-area form .search_form_name{
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 600;
}
.search-area form input[type=text]{
  width: calc(100% - 282px);
  height: 43px;
  padding: 0 12px;
  border: 1px solid #006F37;
  border-radius: 0;
  font-size: 13px;
  font-size: 1.3rem;  
  -webkit-appearance: none;
}
.search-area form input[type=submit]{
  width: 140px;
  height: 43px;
  margin: 0;
  padding: 0 0 0 15px;
  background: url(/albums/abm00000069.svg) no-repeat #006F37;
  background-size: 15px 15px;
  border: none;
  border-radius: 0;
  color: #fff;
  cursor: pointer;
  font-size: 13px;
  font-size: 1.3rem;
  -webkit-appearance: none;
}
.search-area form input[type=submit].faq{
  margin-left: 1px;
  margin-right: 1px;
  background-position: 23% center;
}
.search-area form input[type=submit].text{
  background-position: 14% center;
}
.search-area .search-link ul li{
  position: relative;
  display: inline-block;
  margin-right: 18px;
}
.search-area .search-link ul li::before{
  content: "";
  position: relative;
  width: 13px;
  height: 13px;
  display: inline-block;
  margin-top: -1px;
  margin-right: 6px;
  background-color: #006F37;
  vertical-align: middle;
}
.search-area .search-link ul li::after{
  content: "";
  position: absolute;
  top: 14px;
  left: 3px;
  z-index: 2;
  display: block;
  width: 5px;
  height: 5px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}
.search-area .search-link ul li a{
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
}

.language-list{
  position: absolute;
  z-index: 150;
  top: 44px;
  right: 88px;
  width: 44px;
  background-color: #333;
  font-size: 15px;
  font-size: 1.5rem;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  opacity: 0;
  -webkit-transition: opacity 1s,-webkit-transform 0.4s;
  transition: opacity 1s,-webkit-transform 0.4s;
  -o-transition: transform 0.4s,opacity 1s;
  transition: transform 0.4s,opacity 1s;
  transition: transform 0.4s,opacity 1s,-webkit-transform 0.4s;
}
.language-list.active{
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
  opacity: 1;
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  -o-transition: transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}
.language-list li a{
  display: block;
  height: 44px;
  text-align: center;
  line-height: 44px;
  color: #fff;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.language-list li a:hover{
  background-color: #008E48;
  text-decoration: none;
}
.language-list li.japanese a,
.language-list li.english a,
.language-list li.korean a{
  font-weight: 600;
}
.language-list li a.has-icon.is-target::after{
  content: none;
}

.sns-list{
  position: absolute;
  z-index: 150;
  top: 44px;
  right: 44px;
  width: 44px;
  background-color: #333;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
}
.sns-list.active{
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
      transform: translateY(0);
}
.sns-list li a{
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.sns-list li a:hover{
  background-color: #008E48;
}
.sns-list li.facebook a{
  display: block;
  height: 44px;
  padding: 10px 10px 0 10px;
}
.sns-list li.twitter a{
  display: block;
  height: 44px;
  padding: 4px 4px 0 4px;
}
@media screen and (max-width: 1279px) {
  .search-area{
    z-index: 130;
    top: 90px;
  }
  .search-area-inner{
    width: 100%;
    padding: 15px 0;
  }
  .search-area .mascot{
    width: 60px;
    padding: 0 10px;
  }
  .search-area .mascot img{
    width: 100%;
  }
  .search-area form{
    padding-right: 20px;
  }
  .search-area form input[type="text"]{
    display: block;
    width: 100%;
    height: 43px;
    margin-bottom: 1px;
    padding: 0 12px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 18px;
  }
  .search-area form input.faq[type="submit"]{
    width: 50%;
    margin-left: 0;
    background-position: 21% center;
  }
  .search-area form input.text[type="submit"]{
    width: calc(50% - 1px);
    background-position: 8% center;
  }
  
  .language-list{
    position: fixed;
    top: inherit;
    bottom: 70px;
    z-index: 129;
    right: 0;
    width: 20%;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
        transform: translateY(100%);
  }
  .language-list li a{
    height: auto;
    padding: 10px 0;
  }
  
  .pin-list,
  .login-list,
  .sns-list{
    display: none;
  }
}

/* フッター
***************************/
.footer{
  padding: 30px 0;
  border-top: 1px solid #ccc;
  background-color: #f6f6f9;
}
.footer-inner{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}
.page-top{
  position: fixed;
  z-index: 10;
  bottom: 30px;
  width: 100%;
  max-width: 1280px;
  padding: 0 40px;
  margin: 0 auto;
}
.page-top .foot-top{
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 0 0 auto;
  background-color: #333;
  border-radius: 50%;
  -webkit-transition: background 0.2s;
  -o-transition: background 0.2s;
  transition: background 0.2s;
}
.page-top .foot-top:hover{
  background-color: #006F37;
}
.page-top .foot-top::before{
  content: "";
  position: absolute;
  top: 17px;
  left: 14px;
  width: 12px;
  height: 12px;
  border-left: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}
.page-top .foot-top::after{
  content: "";
  position: absolute;
  top: 17px;
  left: 14px;
  width: 12px;
  height: 12px;
  border-top: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}
.page-top .foot-top i{
  opacity: 0;
}
@media screen and (max-width: 1429px) {
  .page-top .foot-top{
    right: 80px;
  }
}
@media screen and (max-width: 1279px) {
  .page-top{
    bottom: 10px;
    right: 10px;
  }
  .page-top .foot-top{
    right: 0;
  }
}
.footer-nav{
  display: table;
  width: 100%;
  margin-bottom: 30px;
}
.footer-nav ul{
  display: table-cell;
  vertical-align: top;
}
.footer-nav ul li{
  font-size: 13px;
  font-size: 1.3rem;
}
.footer-nav ul.mark{
  width: 225px;
}
.footer-nav ul.mark li{
  display: inline-block;
}
.footer-nav ul.mark li:first-child{
  margin-right: 25px;
}
.footer-logo{
  width: 200px;
  height: 64px;
  margin: 0 auto 20px auto;
}
.footer-sub-nav{
  margin-bottom: 5px;
  text-align: center;
}
.footer-sub-nav ul li{
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
}
.footer-sub-nav ul li::before{
  content: "｜"; 
}
.footer-sub-nav ul li:first-child::before{
  content: none; 
}
.footer .copyright{
  text-align: center;
  font-size: 13px;
  font-size: 1.3rem;
}

.sp-foot-nav{
  display: none;
}
@media screen and (max-width: 1279px) {
  .footer-inner{
    padding: 0 4% 70px 4%;
  }
  .footer-nav{
    display: none;
  }
  .page-top{
    bottom: 80px;
    padding: 0 4%;
  }
  .page-top .foot-top:hover{
    background-color: #333;
  }
  .sp-foot-nav{
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 130;
    display: block;
    width: 100%;
    background-color: #008E48;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 600;
  }
  .sp-foot-nav ul{
    display: table;
    width: 100%;
  }
  .sp-foot-nav ul li{
    display: table-cell;
    width: 20%;
    border-left: 1px solid #00723A;
    vertical-align: middle;
  }
  .sp-foot-nav ul li:first-child{
    border-left: none;
  }
  .sp-foot-nav ul li a{
    display: block;
    text-align: center;
    color: #fff;
    height: 70px;
    padding: 16px 0 0 0;
  }
  .sp-foot-nav ul li a:hover{
    text-decoration: none;
  }
  .sp-foot-nav .access a::before{
    content: "";
    display: block;
    width: 16px;
    height: 20px;
    margin: 0 auto 4px auto;
    vertical-align: middle;
    background: url(/albums/abm00000037.svg) no-repeat left top;
    background-size: 14px 17px;
  }
  .sp-foot-nav .contact a::before{
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    margin: 2px auto 6px auto;
    vertical-align: middle;
    background: url(/albums/abm00000047.svg) no-repeat left top;
    background-size: 14px 14px;
  }
  .sp-foot-nav .request a::before{
    content: "";
    display: block;
    width: 16px;
    height: 15px;
    margin: 2px auto 7px auto;
    vertical-align: middle;
    background: url(/albums/abm00000062.svg) no-repeat left top;
    background-size: 14px 13px;
  }
  .sp-foot-nav .contribution a::before{
    content: "";
    display: block;
    width: 16px;
    height: 13px;
    margin: 3px auto 8px auto;
    vertical-align: middle;
    background: url(/albums/abm00000054.svg) no-repeat left top;
    background-size: 14px 13px;
  }
  .sp-foot-nav .language a::before{
    content: "JP";
    display: block;
    margin: 3px auto 7px auto;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    vertical-align: middle;
  }
  body.english .sp-foot-nav .language a::before{content:"EN";}
  body.chinese_gb .sp-foot-nav .language a::before{content:"簡";}
  body.chinese_big5 .sp-foot-nav .language a::before{content:"繁";}
  body.korean .sp-foot-nav .language a::before{content:"KR";}  
  .sp-foot-nav .about a::before{
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    margin: 2px auto 6px auto;
    vertical-align: middle;
    background: url(/albums/abm00020884.svg) no-repeat left top;
    background-size: 16px 16px;
  }
}
@media screen and (max-width: 639px) {
  .sp-foot-nav .contact a{
    font-size: 11px;
    font-size: 1.1rem;
  }
  .sp-foot-nav .contact a::before{
    margin-bottom: 7px;
  }
}
@media screen and (max-width: 389px) {
  .sp-foot-nav .contact a{
    font-size: 9px;
    font-size: 0.9rem;
  }
  .sp-foot-nav .contact a::before{
    margin-bottom: 9px;
  }
}

/* 大学TOP
***************************/
.top.container{
  padding-bottom: 0;
  background-color: #f6f6f9;
}
@media screen and (max-width: 1279px) {
  .top.container .container-inner{
    max-width: none;
  }
}
@media screen and (max-width: 639px) {
  .top.container{
    padding-top: 0;
    background-color: #fff;
  }
  .top.container .container-inner{
    padding: 0;
  }
}

/*** SPボタン ***/
.more-btn.sp a{
  display: none;
  width: 200px;
  margin: 0 auto;
  padding: 15px 0;
  text-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  color: #fff;
  background: #ccc;
}
@media screen and (max-width: 639px) {
  .more-btn.sp a{
    display: table;
  }
}

/* ３層目
***************************/
/*** パンくず ***/
.title-breads{
  position: relative;
  z-index: 105;
  border-top: 1px solid #ccc;
  background: #fff;
}
.title-breads-inner{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}
.title-breads h1{
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 32px;
  font-size: 3.2rem;
  font-weight: 600;
  line-height: 1.5;
}
.title-breads .breads{
  margin-bottom: 25px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5;
}
.title-breads .breads li{
  position: relative;
  display: inline-block;
  min-height: 24px;
  margin: 3px 0;
  margin-right: 30px;
  padding-left: 32px;
}
.title-breads .breads li:first-child{
  display: none;
}
.title-breads .breads li .button{
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.title-breads .breads li .button::before{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.title-breads .breads li .button::after{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}
.title-breads .breads li .active::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.title-breads .breads li:last-child{
  margin-right: 0;
  padding-left: 0;
}
.title-breads .breads li:last-child::before,
.title-breads .breads li:last-child::after,
.title-breads .breads li:last-child a::before{
  content: none; 
}
@media screen and (max-width: 959px) {
  .title-breads-inner{
    padding: 0 4%;
  }
}
/*** パンくずローカルメニュー ***/
.breads-lists{
  border-bottom: 1px solid #ccc;
}
.breads-lists > div{
  display: none;
  position: relative;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 100;
  padding: 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  background-color: #333;
  color: #fff;
  overflow: hidden;
}
.breads-lists > div a{
  color: #fff;
}
.breads-lists .outer{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px 40px;
}
.breads-lists .outer:empty{
  display: none;
}
.breads-lists .mega-list{
  width: calc( (100% - 90px) / 4 );
  margin: 0 0 0 30px;
  line-height: 1.4;
}
.breads-lists .mega-list:nth-child(4n+1){
  margin-left: 0;
}
.breads-lists .mega-list > div > ul li,
.breads-lists .mega-list > ul li{
  position: relative;
}
.breads-lists .mega-list > ul > li > a{
  display: inline-block;
  padding: 5px 0 5px 34px;
  font-weight: 600;
}
.breads-lists .mega-list > ul > li > .head + ul > li{
  padding: 5px 0 5px 34px;
}
.breads-lists .mega-list > ul > li > .head + ul > li a{
  display: inline-block;
}
.breads-lists .mega-list > ul > li > .head{
  position: relative;
  padding: 5px 0 5px 34px;
  font-weight: 600;
}
.breads-lists .head .button{
  position: absolute;
  top: 3px;
  left: 0;
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-color: #008E48;
  cursor: pointer;
}
.breads-lists .head .button::before{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.breads-lists .head .button::after{
  position: absolute;
  top: 11px;
  left: 6px;
  content: "";
  display: inline-block;
  width: 12px;
  height: 2px;
  background-color: #fff;
}
.breads-lists .head.active .button::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.breads-lists .head + ul{
  display: none;
}
@media screen and (max-width: 959px) {
  .breads-lists .outer{
    display: block;
    padding: 20px 4%;
  }
  .breads-lists .mega-list{
    width: 100%;
    margin: 0;
  }
}

.sns-btn-area {
  position: relative;
  width: 100%;
  max-width: 1280px;
  min-height: 30px;
  margin: 0 auto;
  padding: 0 40px;
}
.sns-btn-area-inner {
  position: absolute;
  top: 10px;
  right: 40px;
}
.sns-btn-area ul {
  display: -webkit-flex;
  display: flex;
}
.sns-btn-area-inner > ul > li:nth-child(4) {
  display: none;
}
.sns-btn-area a {
  display: block;
  margin: 0 3px;
}
.breads-lists + .sns-btn-area{
  margin-top: 20px;
  margin-bottom: 20px;
}
.breads-lists + .sns-btn-area .sns-btn-area-inner{
  top: 0;
}
.title-breads-inner + .sns-btn-area .sns-btn-area-inner{
  top: -10px;
}
.sns-btn-area .container{
  padding-top: 30px;
}
@media screen and (max-width: 959px) {
  .sns-btn-area-inner {
    right: 4%;
  }
}

/*** メインコンテンツ ***/
.container .main{
  float: left;
  width: calc(100% - 320px);
}
@media screen and (max-width: 1279px) {
  .container .main{
    float: none;
    width: 100%;
  }
}

/*** サイドバー ***/
.container .sidebar-wrap{
  float: right;
  width: 260px;
  padding-bottom: 30px;
}
.container .sidebar{
  width: 260px;
  padding-bottom: 40px;
}
.container .sidebar-inner{
  /*background-color: #fff;*/
}
.container .sidebar-list{
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.6;
}
.container .sidebar-list a{
  display: block;
  padding: 5px 0;
  color: #666;
}
.container .sidebar-list a:hover,
.container .sidebar-list a.active{
  text-decoration: none;
}

.container .sidebar-head{
  margin-bottom: 15px;
  padding-bottom: 5px;
  border-bottom: 1px solid #ccc;
  font-weight: 600;
  font-size: 18px;
  font-size: 1.8rem;
}
.container .sidebar-sub-head{
  padding: 10px 0;
  font-weight: 600;
  font-size: 16px;
  font-size: 1.6rem;
}
.container .sidebar .head{
  position: relative;
  padding-right: 24px;
  border-bottom: 1px solid transparent;
  cursor: pointer;
}
.container .sidebar-list > ul > li > .head.active,
.container .sidebar-list > ul > li > .head:hover{
  border-bottom: 1px solid #999;
}
.container .sidebar .head .button{
  position: absolute;
  right: 0;
  top: 0;
  margin-top: 4px;
  width: 24px;
  height: 24px;
}
.container .sidebar .head .button::before{
  content: "";
  position: absolute;
  top: 12px;
  right: 7px;
  display: inline-block;
  width: 11px;
  height: 1px;
  background-color: #333;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s;
}
.container .sidebar .head .button::after{
  content: "";
  position: absolute;
  top: 12px;
  right: 7px;
  display: inline-block;
  width: 11px;
  height: 1px;
  background-color: #333;
}
.container .sidebar .head.active .button::before{
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
}
.container .sidebar .head + ul{
  display: none;
  margin-bottom: 12px;
  padding: 12px 0;
  background-color: #fafafa;
}
.container .sidebar .head + ul li{
  position: relative;
  padding-left: 18px;
  padding-right: 9px;
}
.container .sidebar .head + ul li a:hover::before,
.container .sidebar .head + ul li a.active::before{
  content: "";
  position: absolute;
  left: -16px; 
  top: 0;
  display: inline-block;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  width: 5px;
  height: 5px;
  margin: 15px 0 0 6px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  vertical-align: middle;
}

.container .sidebar-list > ul > li a{
  border-bottom: 1px solid transparent;
}
.container .sidebar-list > ul > li a:hover,
.container .sidebar-list > ul > li a.active{
  position: relative;
  border-bottom: 1px solid transparent;
}
.container .sidebar-bnr {
  padding: 30px 0;
}
.container .sidebar-bnr > * {
  width: 260px;
  margin: 0;
  padding: 10px;
}
.container .sidebar-bnr .cp-it-b {
  font-size: 13px;
  font-size: 1.3rem;
}

.sidebar-wrap.open .sidebar-list > ul > li > .head{
  border-bottom: 1px solid #999 !important;
}
.sidebar-wrap.open .head{
  padding-right: 0 !important;
}
.sidebar-wrap.open .head .button{
  display: none !important;
}
.sidebar-wrap.open .head + ul{
  display: block !important;
}
.sidebar-wrap.open .sidebar-list > ul > li a{
  position: relative !important;
  border-bottom: 1px solid transparent !important;
}

@media screen and (max-width: 1279px) {
  .container .sidebar-wrap{
    position: relative;
    float: none;
    width: 100%;
    margin-top: 0px;
    padding-bottom: 40px;
  }
  .container .sidebar-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    z-index: -1;
    width: 150%;
    height: 100%;
    display: block;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background-color: #fff;
  }
  .container .sidebar-slide{
    position: static !important;
    padding-top: 20px;
  }
  .container .sidebar{
    width: 100%;
  }
}

/* INDEX */
body.index .container {
  padding-top: 0;
  background-color: #f6f6f9;
  overflow-x: hidden;
}

/* 学部 */
body.education .title-breads{
  padding-top: 30px;
}
body.education .breads-lists{
  border-bottom: none;
}

/* 大学院 */
body.graduate .container{
  background-color: #fff;
  overflow-x: hidden;
}
body.graduate .senon-index-topics,
body.graduate .senon-index-topics > *{
  position: relative;
}
body.graduate .senon-index-topics::before{
  content: "";
  height: 100%;
  top: 0;
  left: -1000%;
  margin: 0;
  max-width: 2000%;
  position: absolute;
  right: 1000%;
  width: 2000%;
  background-color: #f6f6f9;
}

/* 学部入試情報 */
body.admiss_info.index .title-breads{
  padding: 25px 0;
  background-color: #f6f6f9;
}
body.admiss_info.index .title-breads .breads{
  margin-bottom: 0;
}
body.admiss_info.index .breads-lists {
  border-bottom: none;
}
body.admiss_info.index .cp-h1-text{
  margin-top: 40px;
}

/* SENSHU ONLINE */
body.senon .title-breads{
  display: none;
}
body.senon .container {
  padding-top: 40px;
  background-color: #f6f6f9;
}
body.senon.main-nav .container{
  background: -webkit-linear-gradient(top, #f6f6f9, #f6f6f9 50px, #fff 0, #fff 50px);
  background: -o-linear-gradient(top, #f6f6f9, #f6f6f9 50px, #fff 0, #fff 50px);
  background: linear-gradient(to bottom, #f6f6f9, #f6f6f9 50px, #fff 0, #fff 50px);
}
body.senon.advertisement .container {
  padding-top: 0;
  background-color: #fff;
}
body.senon .container h1 {
  font-size: 2.4rem;
  text-align: center;
  font-weight: 600;
}
body.senon .title-breads .breads {
  margin: 25px 0;
}
body.senon .breads-lists {
  border-bottom: none;
}
body.senon .title-breads {
  border-top: none;
}
@media screen and (max-width: 959px) {
  body.senon .senon-main-nav{
    display: none;
  }
  body.senon .title-breads{
    display: block;
  }
}

/* 専修大学からの「知の発信」 */
body.chinohassin .cp-button-col1,
body.chinohassin .cp-button-col2,
body.chinohassin .cp-button-col3,
body.chinohassin .cp-button-col4{
  margin-left: 4%;
  margin-right: 4%;
}

/* 専大スポーツ */
body.oneday-program .container .sidebar{
  padding-bottom: 30px;
}
.sidebar .odt-topnavi-it-wrap {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}
.sidebar .odt-topnavi-it-wrap .img-wrap {
  width: 30px;
  display: table-cell;
  vertical-align: middle;
}
.sidebar .odt-topnavi-it-wrap .text-wrap {
  display: table-cell;
  padding-left: 10px;
  vertical-align: middle;
}
.sidebar .odt-topnavi-inner a {
  display: block;
}

/*----------------------------------
部・同好会全体設定
----------------------------------*/
body.senon.clubs .container {
  background-color:#fff;
  padding-top:0;
}

body.senon.clubs .container h1 {
  display:inline-block;
}

body.senon.clubs .container-inner {
  max-width: 1120px;
}

/*----------------------------------
部・同好会全体設定　基本ブロック
----------------------------------*/
/*h2*/
body.senon.clubs .cp-h2-text{
 border-bottom: 1px solid #222222;
 padding-bottom: 10px;
}

/* 専修の学び方 */
.semi-title{
  background-color: #fff; 
}
.semi-title-inner{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 70px;
}
.semi-title .title-block{
  margin: 0;
  padding: 30px 0 20px 95px;
  font-size: 48px;
  font-size: 4.8rem;
  font-weight: 300;
  background: url(/albums/abm00009611.png) no-repeat 0 40px;
  background-size: 80px 74px;
}

body.howto-lower .container-inner{
  padding: 0 70px;
}
@media screen and (max-width: 959px) {
  body.howto-lower .container-inner{
    padding: 0 4%;
  }
}

body.howto.seminar{
  background-color: #f6f6f9;
}
body.howto .breads-lists {
  border-bottom: none;
}
body.howto .title-breads {
  border-top: none;
  padding: 25px 0 1px 0;
}
body.howto.index .title-breads{
  background-color: #f6f6f9;
}

body.howto.seminar.index .title-breads{
  background-color: #fff;
}
body.seminar .container-inner{
  position: relative;
  padding: 0 70px;
}
body.seminar .container h1{
  min-height: 52px;
  padding-top: 4px;
  padding-left: 75px;
  padding-right: 190px;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.6;
}
body.seminar .btn-back {
  position: absolute;
  right: 70px;
  top: 0;
  width: 180px;
  background-color: #fff;
  text-align: center;
  border: 1px solid #ccc;
  padding: 6px 0;
  -webkit-transition: background 0.2s, color 0.2s, border 0.2s;
  -o-transition: background 0.2s, color 0.2s, border 0.2s;
  transition: background 0.2s, color 0.2s, border 0.2s;
}
body.seminar .btn-back:hover {
  color: #fff;
  background-color: #018E49;
  border-color: #018E49;
  text-decoration: none;
}
body.seminar .semi-prev-next {
  display: table;
  width: 100%;
  max-width: 570px;
  margin: 80px auto 0 auto;
  text-align: center;
}
body.seminar .semi-prev-next > div {
  display: table-cell;
  padding: 0 5px;
}
body.seminar .semi-prev-next > div a {
  position: relative;
  display: block;
  background: #fff;
  border: 1px solid #ccc;
  padding: 6px 0;
  -webkit-transition: background 0.2s, color 0.2s, border 0.2s;
  -o-transition: background 0.2s, color 0.2s, border 0.2s;
  transition: background 0.2s, color 0.2s, border 0.2s;
}
body.seminar .semi-prev-next > div a:hover {
  color: #fff;
  background-color: #018E49;
  border-color: #018E49;
  text-decoration: none;
}
body.seminar .semi-prev-next .prev a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
      transform: rotate(180deg);
}
body.seminar .semi-prev-next .next a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
}
@media screen and (max-width: 959px) {
  body.seminar .container h1{
    padding-right: 0;
  }
  .semi-title .title-block{
    padding: 38px 0 35px 95px;
    font-size: 38px;
    font-size: 3.8rem;
  }
  .semi-title-inner,
  body.seminar .container-inner{
    padding: 0 4%;
  }
  body.seminar .btn-back {
    position: relative;
    top: -40px;
    right: 0;
    display: block;
    margin: 0 0 0 auto;
  }
  body.seminar .semi-prev-next > div a span {
    display: none;
  }
  body.seminar .semi-prev-next .prev a{
    padding-left: 12px;
  }
  body.seminar .semi-prev-next .next a{
    padding-right: 12px;
  }
}
body.seminar.economics .container h1{
  background: url(/albums/abm00009129.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.law .container h1{
  background: url(/albums/abm00009130.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.Business .container h1{
  background: url(/albums/abm00009131.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.commerce .container h1{
  background: url(/albums/abm00009132.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.letters .container h1{
  background: url(/albums/abm00009133.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.network .container h1{
  background: url(/albums/abm00009134.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.humansciences .container h1{
  background: url(/albums/abm00009135.png) no-repeat left top;
  background-size: 60px 52px;
}
body.seminar.culture .container h1{
  background: url(/albums/abm00009136.png) no-repeat left top;
  background-size: 60px 52px;
}

/* 貴重書ギャラリー */
.collection-prev-next{
  margin-top: 80px;
  border-top: 1px solid #ccc;
}
.collection-prev-next-inner {
  display: table;
  width: 100%;
  max-width: 570px;
  margin: 40px auto 0 auto;
  text-align: center;
}
.collection-prev-next-inner > div {
  display: table-cell;
  padding: 0 5px;
}
.collection-prev-next-inner > div a {
  position: relative;
  display: block;
  background: #fff;
  border: 1px solid #ccc;
  padding: 6px 0;
}
.collection-prev-next .prev a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
      transform: rotate(180deg);
}
.collection-prev-next .next a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
}
@media screen and (max-width: 959px) {
  .collection-prev-next-inner > div a span {
    display: none;
  }
  .collection-prev-next .prev a{
    padding-left: 12px;
  }
  .collection-prev-next .next a{
    padding-right: 12px;
  }
}

/* ゼミを知る */
body.knowledge .container {
  padding-top: 20px;
}
body.knowledge .cp-text-col1:first-child {
  margin: 0;
  padding: 0 30px;
}
body.knowledge .bg-block {
  padding-left: 30px;
  padding-right: 30px;
}
body.knowledge .cp-h2-text {
  background: url(/albums/abm00009611.png) no-repeat 0 0px;
  background-size: 60px 55px;
  min-height: 60px;
  padding-left: 70px;
}
body.knowledge .bg-block + .cp-h2-text {
  padding-left: 100px;
  padding-right: 30px;
  background-position: 30px 0;
}
body.knowledge .cp-img-col3 {
  margin-top: 40px;
  margin-bottom: 60px;
}
body.knowledge .cp-img-col3 .cp-it-t {
  padding: 0 30px 10px 30px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
}
body.knowledge .cp-img-col3 .cp-it-b {
  padding: 10px 30px 0 30px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}
body.knowledge .cp-img-col3 .cp-col-01,
body.knowledge .cp-img-col3 .cp-col-02 {
  margin-right: 2.329375%;
}
body.knowledge .img-switch{
  margin-top: 40px;
}
@media screen and (max-width: 959px) {
  body.knowledge .cp-text-col1:first-child {
    padding: 0 0;
  }
  body.knowledge .bg-block {
    padding-left: 0;
    padding-right: 0;
  }
  body.knowledge .bg-block + .cp-h2-text{
    padding-left: 70px;
    padding-right: 0px;
    background-position: 0 0;
  }
  body.knowledge .cp-img-col3 .cp-it-b{
    padding-left: 0;
    padding-right: 0;
  }
}

/* ○○ONLINE */
body.online .title-breads{
  border-top: none;
}
body.online .title-breads .breads{
  margin-top: 25px;
}
body.online .breads-lists{
  border-bottom: none;
}
.online-contents .paging{
  display: none;
}
.online-contents #infscr-loading{
  display: none !important;
}

/* 図書館 */
body.library .title-bread{
  border-top: none;
}
body.library .title-breads .breads{
  margin-top: 25px;
}
body.library .breads-lists{
  border-bottom: none;
}
body.library .library-tab-only:first-child{
  margin-top: 0;
}
body.library.collection .cp-h1-text{
  margin-top: 40px;
}

/* 訪問者別 */
body.visitor .title-breads h1{
  margin-top: 50px;
  margin-bottom: 50px;
}

/* ニュース・イベント詳細 */
body.news-detail .container-inner a{
  text-decoration: underline;
}
body.news-detail .container-inner a:hover{
  text-decoration: none;
}
body.news-detail .title-breads-inner,
body.news-detail .container-inner{
  padding: 0 120px;
}
body.news-detail .sns-btn-area{
  max-width: 1120px;
}
body.news-detail .title-breads .dc-wrap + h1{
  margin-top: 30px;
  margin-bottom: 0;
}
body.news-detail .title-breads + .container .container-inner > *:first-child{
  margin-top: 0;
}

body.news-detail .title-breads .dc-wrap {
  margin-top: 50px;
}
body.news-detail .title-breads .date-area{
  float: left;
  width: 55px;
  margin-right: 15px;
}
body.news-detail .title-breads .date-area .date{
  display: inline-block;
  width: 55px;
  height: 55px;
  padding-top: 4px;
  background-color: #008E48;
  line-height: 1.35;
  vertical-align: middle;
  text-align: center;
  color: #fff;
}
body.news-detail .title-breads .date-area .date .day{
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.2;
}
body.news-detail .title-breads .date-area .date .month{
  display: block;
  font-size: 13px;
  font-size: 1.3rem;
}
body.news-detail .title-breads .date-category-area{
  overflow: hidden;
}
body.news-detail .title-breads .date-category-area .date{
  font-weight: 500;
}
body.news-detail .title-breads .date-category-area .category{
  line-height: 1.6;
  color: #666;
}
body.news-detail .title-breads .date-category-area .category .cat-name{
  display: none;
}
body.news-detail .title-breads .date-category-area .category .cat-name.active{
  display: inline-block;
  margin-right: 15px;
}

.news-prev-next{
  margin-top: 80px;
  border-top: 1px solid #ccc;
}
.news-prev-next-inner {
  display: table;
  width: 100%;
  max-width: 570px;
  margin: 40px auto 0 auto;
  text-align: center;
}
.news-prev-next-inner > div {
  display: table-cell;
  padding: 0 5px;
}
body.news-detail .container-inner .news-prev-next-inner > div a {
  position: relative;
  display: block;
  background: #fff;
  border: 1px solid #ccc;
  padding: 6px 0;
  text-decoration: none;
}
body.news-detail .container-inner .news-prev-next-inner > div a:hover{
  text-decoration: underline;
}
body.news-detail .container-inner .news-prev-next-inner > div.nolink a{
  color: #ccc;
}
body.news-detail .container-inner .news-prev-next-inner > div.nolink a:hover{
  text-decoration: none;
}
.news-prev-next .prev a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
      transform: rotate(180deg);
}
.news-prev-next .next a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -7px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
}
.news-prev-next .next.nolink a::before,
.news-prev-next .prev.nolink a::before{
  background-color: #ccc;
}
@media screen and (max-width: 959px) {
  body.news-detail .title-breads-inner,
  body.news-detail .container-inner{
    padding: 0 4%;
  }
  .news-prev-next-inner > div a span {
    display: none;
  }
  .news-prev-next .prev a{
    padding-left: 12px;
  }
  .news-prev-next .next a{
    padding-right: 12px;
  }
}

/*SENDY NAVI用*/
.main.academic-answer .content-answer-inner a {
  text-decoration: underline;
}

/*SENDY NAVIリストタグ*/
.main.academic-answer .content-answer-inner ul li{
  position: relative;
  margin: 10px 0;
  padding-left: 38px;
  text-indent: -38px;
  line-height: 1.8;
}
.main.academic-answer .content-answer-inner ul li::before{
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  margin: -1px 18px 0 15px;
  background: #333;
  border-radius: 50%;
  vertical-align: middle;
}
.main.academic-answer .content-answer-inner ul li a{
  padding: 3px 0 3px 40px;
  margin-left: -40px;
  text-decoration: none;
}
.main.academic-answer .content-answer-inner ul li a:hover{
  text-decoration: underline;
}
.main.academic-answer .content-answer-inner ul li a::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 10px;
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(/albums/abm00000119.svg) no-repeat center center #333;
  background-size: 15px 15px;
}
.main.academic-answer .content-answer-inner ol{
  counter-reset: list-number;
}
.main.academic-answer .content-answer-inner ol li{
  margin: 10px 0;
  padding-left: 38px;
  text-indent: -38px;
  line-height: 1.8;
}
.main.academic-answer .content-answer-inner ol li::before {
  content: counter(list-number)".";
  counter-increment: list-number;
  display: inline-block;
  min-width: 33px;
  text-align: right;
  margin-right: 5px;
}
.main.academic-answer .content-answer-inner ol li a{
  text-decoration: none;
}
.main.academic-answer .content-answer-inner ol li a:hover{
  text-decoration: underline;
}


.faq.container .main.academic-answer {
  width: calc(100% - 400px);
}

@media screen and (max-width: 1279px) { 
  .faq.container .main.academic-answer {
    width: 100%;
  }
}

.faq.container .sidebar-wrap,
.faq.container .sidebar {
  width: 340px;
}

.container-inner.faq-inner{
  margin-bottom: 40px;
}

.container-inner.faq-inner > div:last-child {
  padding-bottom: 20px;
}

.faq.container .main > *:last-child {
  padding-bottom: 7px;
  margin-bottom: 150px;
}

.content-answer-inner-pre .read-more {
  color: #018E48;
}


/*sendy navi title*/
h1.sendy-navi {
  margin-top: 20px;
  padding: 40px 0;
  padding-left: 100px;
  background-image: url(/albums/abm00013325.svg);
  background-size: 84px 120px;
  background-position: center left;
  background-repeat: no-repeat;
  font-weight: 500;
}

/*SENDY NABI サイト内検索側*/
.faq.container .sidebar-wrap .gs-webResult.gs-result a.gs-title:visited, .gs-webResult.gs-result a.gs-title:visited b, .gs-imageResult a.gs-title:visited, .gs-imageResult a.gs-title:visited b,
.faq.container .gs-webResult.gs-result a.gs-title:link, .gs-webResult.gs-result a.gs-title:link b, .gs-imageResult a.gs-title:link, .gs-imageResult a.gs-title:link b {
  color: #018E48 !important;
  font-size: 1.5rem !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}

.faq.container .gs-result .gs-title, .faq.container .gs-result .gs-title * {
  text-decoration: none !important;
}

.faq.container .faq.container .gs-result .gs-title a:hover, .faq.container .gs-result .gs-title a:hover {
  text-decoration: underline !important;
}


.faq.container .gsc-orderby-container {
  display: none !important;
}


.faq.container .gs-webResult div.gs-visibleUrl, .faq.container .gs-imageResult div.gs-visibleUrl {
  color: #018E48 !important;
  font-size: 1.3rem !important;
  line-height: 1.8 !important;
}

.faq.container .gs-webResult .gs-snippet, .faq.container .gs-imageResult .gs-snippet, .faq.container .gs-fileFormatType {
  color: #555 !important;
  font-size: 1.2rem !important;
  line-height: 1.6 !important;
}

.faq.container .gsc-table-result, .faq.container .gsc-thumbnail-inside, .faq.container .gsc-url-top {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.faq.container .gsc-table-cell-thumbnail, .faq.container .gs-promotion-image-cell {
  display: none !important;
}

.faq.container .gsc-above-wrapper-area {
  border-color: #999;
  border-top: 1px solid #999 !important;
  padding-bottom: 0 !important;
  margin-top: 75px;
}

.faq.container .gsc-webResult.gsc-result, .faq.container .gsc-results .gsc-imageResult {
  border-bottom: 1px solid #999;
}

.faq.container .gsc-webResult .gsc-result {
  padding: 15px 0 20px 0;
}

.faq.container .gsc-results .gsc-cursor-box .gsc-cursor-current-page,
.faq.container .gsc-results .gsc-cursor-box .gsc-cursor-page {
  color: #018E48 !important;
}

.faq.container .cp-all .gsc-results-wrapper-visible table th, 
.faq.container .cp-all .gsc-results-wrapper-visible table td {
  padding: 0 !important;
  border: none !important;
}

.faq.container .gsc-control-cse {
  padding: 0 !important;
}

.faq.container .sidebar .cp-external {
  margin: 0;
}

.faq.container .sidebar .gsc-control-cse {
  font-family: Lato, "Noto Sans Japanese", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}

body .gsc-result .gs-title {
  height: inherit !important;
}

body .faq.container .gsc-cursor-box.gs-bidi-start-align {
  text-align: center;
}

body .faq.container .gsc-results .gsc-cursor-box .gsc-cursor-page {
  background-color: #fff;
  border-color: #999!important;
  border-style: solid;
  border-width: 1px;
  color: #555;
  padding: 8px 12px 5px !important;
  height: 10px !important;
  font-size: 1.6rem;
}

body .faq.container .gsc-results .gsc-cursor-box .gsc-cursor-page.gsc-cursor-current-page {
  background-color: #999!important;
  border: 1px solid #999;
  color: #FFF !important;
}
body .faq.container .gsc-search-box-tools .gsc-search-box .gsc-input {
  padding: 0;
  border: 1px solid #999;
}
body .faq.container .gsc-search-box td.gsc-search-button {
  border: none;
  width: 40px;
  padding: 0;
  vertical-align: top;
  border: 1px solid #999;
}
body .faq.container .gsc-search-box td.gsc-search-button input.gsc-search-button {
  height: auto;
  width: 40px;
  border: none;
  margin: 0;
  border-radius: 0;
  padding: 15px 13px 14px 13px !important;
  background: #999;
}
body .faq.container #gsc-i-id1 {
  padding: 10px 15px !important;
  font-size: 16px;
  font-size: 1.6rem;
}
body .faq.container #gs_st50 {
    padding: 5px 2px 0 2px;
}
body .faq.container table.gsc-search-box td {
  border: none;
  padding: 0;
}
body .faq.container .gsc-input-box {
  height: auto;
  border: none;
}
form.gsc-search-box.gsc-search-box-tools{
  display: block !important;
}
body .faq.container .gsst_a{
  padding: 0 12px;
}

span#gs_cb50 {
  display: none;
}

/*印刷用*/
@media print {
  table{
    page-break-inside: avoid;
  }
  
  .container .main{
    width: 100%;
  }
  .container .sidebar-wrap {
    display:none;
  }
  #search-area,
  #indexmenu-lists,
  #megadrop-lists{
    display:none;
  }
  .table-scroll-x::before{
    content: none !important;
  }
}
@media all and (-ms-high-contrast:none){
  table{
    page-break-inside: auto;
  }
}

body.english .head-bottom .g-nav ul li a{
  padding: 32px 12px 0 12px;
}
body.english .head-bottom .g-nav ul li.empty{
  padding: 0 6px;
}
body.english .language-list,
body.chinese_gb .language-list,
body.chinese_big5 .language-list,
body.korean .language-list{
  right: 44px;
}
body.english .indexmenu-lists .mega-head .button,
body.chinese_gb .indexmenu-lists .mega-head .button,
body.chinese_big5 .indexmenu-lists .mega-head .button,
body.korean .indexmenu-lists .mega-head .button{
  display: none;
}
body.english .indexmenu-lists .menu-head-outer + div .mega-head-outer .mega-head .button,
body.chinese_gb .indexmenu-lists .menu-head-outer + div .mega-head-outer .mega-head .button,
body.chinese_big5 .indexmenu-lists .menu-head-outer + div .mega-head-outer .mega-head .button,
body.korean .indexmenu-lists .menu-head-outer + div .mega-head-outer .mega-head .button {
  display: block;
}
@media screen and (max-width: 1279px) {
  body.english .language-list,
  body.chinese_gb .language-list,
  body.chinese_big5 .language-list,
  body.korean .language-list{
    right: 0;
    width: 25%;
  }
}
@media screen and (max-width: 639px) {
  body.english .sp-foot-nav .contact a,
  body.chinese_gb .sp-foot-nav .contact a,
  body.chinese_big5 .sp-foot-nav .contact a,
  body.korean .sp-foot-nav .contact a{
    font-size: 12px;
    font-size: 1.2rem;
  }
  body.english .sp-foot-nav .contact a::before,
  body.chinese_gb .sp-foot-nav .contact a::before,
  body.chinese_big5 .sp-foot-nav .contact a::before,
  body.korean .sp-foot-nav .contact a::before{
    margin-bottom: 6px;
  }
}
@media screen and (max-width: 389px) {
  body.english .sp-foot-nav .contact a,
  body.chinese_gb .sp-foot-nav .contact a,
  body.chinese_big5 .sp-foot-nav .contact a,
  body.korean .sp-foot-nav .contact a{
    font-size: 12px;
    font-size: 1.2rem;
  }
  body.english .sp-foot-nav .contact a::before,
  body.chinese_gb .sp-foot-nav .contact a::before,
  body.chinese_big5 .sp-foot-nav .contact a::before,
  body.korean .sp-foot-nav .contact a::before{
    margin-bottom: 6px;
  }
  body.english .sp-foot-nav .about a{
    font-size: 10px;
    font-size: 1.0rem;
  }
  body.english .sp-foot-nav .contact a::before{
    margin-bottom: 8px;
  }
}

.english.lower .index-nav-block-manual,
.chinese_big5.lower .index-nav-block-manual,
.chinese_gb.lower .index-nav-block-manual,
.korean.lower .index-nav-block-manual{
  width: 48.745%;
}
.english.lower .index-nav-block-manual:nth-child(3n+1),
.chinese_big5.lower .index-nav-block-manual:nth-child(3n+1),
.chinese_gb.lower .index-nav-block-manual:nth-child(3n+1),
.korean.lower .index-nav-block-manual:nth-child(3n+1){
  margin-left: 2.51%;
}
.english.lower .index-nav-block-manual:nth-child(2n+1),
.chinese_big5.lower .index-nav-block-manual:nth-child(2n+1),
.chinese_gb.lower .index-nav-block-manual:nth-child(2n+1),
.korean.lower .index-nav-block-manual:nth-child(2n+1){
  margin-left: 0;
}
@media screen and (max-width: 959px){
  .english.lower .index-nav-block-manual,
  .chinese_big5.lower .index-nav-block-manual,
  .chinese_gb.lower .index-nav-block-manual,
  .korean.lower .index-nav-block-manual{
    width: 100%;
    margin-left: 0%;
  }
  .english.lower .index-nav-block-manual:nth-child(3n+1),
  .chinese_big5.lower .index-nav-block-manual:nth-child(3n+1),
  .chinese_gb.lower .index-nav-block-manual:nth-child(3n+1),
  .korean.lower .index-nav-block-manual:nth-child(3n+1){
    margin-left: 0%;
  }
}

/*------------------------------------------------------------*/
/*-- FORM common --*/
/*------------------------------------------------------------*/
.cp-form #formTtl{
  display: none;
}
.cp-form #formTxt{
  margin-bottom:20px;
}
.cp-form #formTxt a {
  text-decoration: underline;
}
.cp-form #formTxtError{
  color:#f00;
  margin-bottom:20px;
}
.cp-form .errorMsg {
  background:#CC3300;
  color:#fff;
  font-size:11px;
  float:left;
  padding:2px 3px;
  margin:3px;
}
.cp-form .cp-all td,
.cp-form .cp-all th {
  border: #bbb 1px solid;
}
.cp-form textarea{
  border: 1px solid #ccc;
}
/*------------------------------------------------------------*/
/*-- hr --*/
/*------------------------------------------------------------*/
.cp-form hr.horizonType,
.cp-form hr.longType,
.cp-form hr.longType lineType {
	width:100%;
	border:0;
	height:1px;
	margin:15px 0;
}
.cp-form hr.longType,
.cp-form hr.horizonType {
	background:#E7E7E9;
	color:#E7E7E9;
}
.cp-form hr.longType lineType {
	background:#E6E6E6;
	color:#E6E6E6;
}
/*------------------------------------------------------------*/
/*-- ラジオボタン --*/
/*------------------------------------------------------------*/
.cp-form input[type="radio"],
.cp-form input[type="checkbox"] {
	display: inline-block;
}
/*------------------------------------------------------------*/
/*-- table --*/
/*------------------------------------------------------------*/
.cp-form #formTable {
	width:100%;
	color:#333;
	border-collapse:collapse;
//	border:1px solid #bbb;
//	border-spacing: 2px;
}
.cp-form #formTable tr th {
  font-weight: inherit;
  border-left: #bbb 1px solid;
}
.cp-form #formTable tr:last-child th {
  background-color: #FFF;
  border: none;
  text-align: center;
  border-top: #bbb 1px solid;
  padding-top: 40px;
}
.cp-form #formTable tr:last-child td {
  background: none;
  border: none;
  text-align: left;
}
.senon.max .cp-form #formTable tr:last-child td {
  background-color: #f6f6f9;
}
.senon.max .cp-form #formTable .formName tr:last-child td,
.senon.max .cp-form #formTable .formTel tr:last-child td {
  background-color: #FFF;
}
.confirm #formTable tr:last-child th {
  background-color: #E7E7E9;
  text-align: center;
  border: #bbb 1px solid;
  padding-top: 10px;
}
.confirm #formTable tr:last-child td {
  background: none;
  border-bottom: #bbb 1px solid;
  border-right: #bbb 1px solid;
  border-top: #bbb 1px solid;
}
.lineType#formTable{
	border-collapse:collapse;
	border:0;
	border-spacing: 0;
}
.cp-form .horizonType th{
padding:10px;
background:#E7E7E9;
border-top:#bbb 1px solid;
//	border-bottom:#bbb 1px solid;
width:20%;
}
.cp-form .horizonType td{
padding:10px;
border-top:#bbb 1px solid;
//	border-bottom:#bbb 1px solid;
border-left:#bbb 1px solid;
border-right:#bbb 1px solid;
//	background:#F2F2F2;
width:80%;
}
.cp-form .longType th{
padding:10px;
background:#E7E7E9;
width:100%;
}
.cp-form .longType td{
//	background:#F2F2F2;
padding:10px;
	
}
.cp-form .lineType th{
	background:#fff;
	border:1px solid #e6e6e6;
	padding:10px;
}
.cp-form .lineType2 th{
	border-top:#bbb 1px solid;
	border-bottom:#bbb 1px solid;
}
.cp-form .lineType td{
//	background:#E7E7E9;
  border:1px solid #e6e6e6;
  padding:10px;
}
.cp-form .longType td{
  padding-left:34px;
}
.cp-form #formTable th,#formTable td{
  vertical-align:top;
}
.cp-form #formTable table th,#formTable table td{
  padding:0;
  /*width:auto;*/
  border:none;
}
.cp-form .lineType#formTable .endLine th {
  border:none;
}
.cp-form .note {
  font-size:12px;
}
.cp-form .formError{
  color:#f00;
}
/*------------------------------------------------------------*/
/*-- table title --*/
/*------------------------------------------------------------*/
.cp-form #formTable .tableTtl{
	float: left;
	text-align: left;
}
.cp-form #formTable .tableMust{
	float:right;
}
.cp-form .longType#formTable .tableTtl{
	padding-right:5px;
}
.cp-form #formTable .tableMust{
	text-align:right;
	width:auto;
	float:right;
}
.cp-form #formTable .mustArea{
	background:#FD0008;
	display: inline-block;
	font-size:14px;
	color:#fff;
	padding:2px 5px;
	line-height: 1.6;
}
/*------------------------------------------------------------*/
/*-- formSelect --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formSelect select{
	/*width:320px;*/
}
/*------------------------------------------------------------*/
/*-- formName --*/
/*------------------------------------------------------------*/
.cp-form #formTable .nameArea{
	width:40px;
	vertical-align:middle;
}
.cp-form #formTable .nameInput{
	width:150px;
}
.cp-form #formTable .nameInput input{
	width:130px;
}
/*------------------------------------------------------------*/
/*-- formInput --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formInput input{
	width:60%;
}
/*------------------------------------------------------------*/
/*-- formPost --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formPost{
  margin-bottom:5px;
  display: block;
}
.cp-form #formTable .postArea1{
	width:23px;
}
.cp-form #formTable .postArea2{
	width:15px;
	text-align:center;
}
.cp-form #formTable .postInput1,#formTable .postInput1 input{
width:60px;
}
.cp-form #formTable .postInput2,#formTable .postInput2 input{
width:80px;
}
.cp-form #formTable .formName input{
width:140px;
}
/*------------------------------------------------------------*/
/*-- formCity --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formCity{
	margin-bottom:5px;
}
.cp-form #formTable .cityArea{
	width:60px;
	vertical-align:middle;
}
.cp-form #formTable .citySelect,#formTable .citySelect select{
	/*width:130px;*/
}
/*------------------------------------------------------------*/
/*-- formPost --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formPlace{
	width:100%;
}
.cp-form #formTable .placeInput input{
	width:60%;
}
.cp-form #formTable .formPost .postArea2 {
  text-align: center;
}
/*------------------------------------------------------------*/
/*-- formTel --*/
/*------------------------------------------------------------*/
.cp-form #formTable .telArea{
	width:23px;
	text-align:center;
}
.cp-form #formTable .formTel {
  display: block;
}
.cp-form #formTable .formTel .telArea {
  text-align: center;
}
.cp-form #formTable .telInput,#formTable .telInput input{
	width:60px;
}
/*------------------------------------------------------------*/
/*-- formMail --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formMail{
	width:100%;
}
.cp-form #formTable .mailArea{
	color:#f00;
}
.cp-form #formTable .mailInput input{
	width:60%;
}
/*------------------------------------------------------------*/
/*-- formMail --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formBtn{
  margin:0 auto;
}
.cp-form #formTable .formBtn td{
width:182px;
}
.cp-form #formTable .formBtn tr td {
  text-align: center !important;
}
.cp-form .lineType#formTable .formBtn td{
background:#E7E7E9;
width:182px;
}
.senon.max .cp-form #formTable .formBtn td{
  background-color: #f6f6f9;
}
.cp-form #formTable .btnSubmit,
.cp-form #formTable .btnRewrite,
.cp-form .lineType#formTable .btnSubmit,
.cp-form .lineType#formTable .btnRewrite{
	padding-right:10px;
}
.cp-form #submitPage #formTable .btnSubmit{
	padding-right:0;
}
.cp-form #formTable .btnSubmit input{
  background:url(../images/btn_submit.jpg) no-repeat left top;
  width:182px;
  height:37px;
  padding-top:37px;
  overflow-y:hidden;
  cursor:pointer;
}
.cp-form #formTable .reset {
  width: 190px;
  height: 60px;
  font-size: 16px;
  padding: 4px 10px;
  color: #333;
  cursor: pointer;
  background: #d8d8d8;
  border-radius: 0px 0px 0px 0px;
  text-align: center;
  border: none;
  box-shadow: none;
  font-weight: normal;
  margin-top: 50px;
  margin-right: 0;
  margin-left: 30px;
}
.cp-form #formTable .reset:hover {
  background-color: #666;
  color: #FFF;
}
.cp-form #formTable .btnRewrite input{
	background:url(../images/btn_rewrite.jpg) no-repeat left top;
	width:182px;
	height:37px;
	padding-top:37px;
	overflow-y:hidden;
	cursor:pointer;
	border:none;
	
}
.cp-form #formTable .btnSend input{
	background:url(../images/btn_send.jpg) no-repeat left top;
	width:182px;
	height:37px;
	padding-top:37px;
	overflow-y:hidden;
	cursor:pointer;
	border:none;
	
}
.cp-form #formTable .btnReturn input{
	background:url(../images/btn_return.jpg) no-repeat left top;
	width:182px;
	height:37px;
	padding-top:37px;
	overflow-y:hidden;
	cursor:pointer;
	border:none;
}
.cp-form #formTable .btnReset input{
	background:url(../images/btn_reset.jpg) no-repeat left top;
	width:182px;
	height:37px;
	padding-top:37px;
	overflow-y:hidden;
	cursor:pointer;
	border:none;
}
/*------------------------------------------------------------*/
/*-- formSex --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formSex{
	width:100%;
}
.cp-form #formTable .sexInput{
	width:50%;
}
.cp-form #formTable .sexInput input{
	margin-right:0.5em;
}
/*------------------------------------------------------------*/
/*-- fromEnquete --*/
/*------------------------------------------------------------*/
.cp-form #formTable .fromEnquete .EnqueteTitle, 
.cp-form #formTable .fromEnquete .EnqueteAnswer {
	padding:10px;
}
.cp-form #formTable .fromEnquete .EnqueteAnswer p {
	line-height:200%;
}
/*------------------------------------------------------------*/
/*-- formCheck --*/
/*------------------------------------------------------------*/
.cp-form #formTable .formCheck{
	width:100%;
}
.cp-form #formTable .checkInput{
	width:auto;
}
.cp-form #formTable .checkInput input{
	margin-right:0.5em;
}
/*------------------------------------------------------------*/
/*-- formPrivacy --*/
/*------------------------------------------------------------*/
.cp-form #formTable td.formPrivacy {
	padding:0;
}
.cp-form #formTable div.formPrivacy {
	overflow-y:scroll;
}
.cp-form #formTable div.formPrivacy {
	padding:10px 20px;
}
/*------------------------------------------------------------*/
/*-- submit --*/
/*------------------------------------------------------------*/
.cp-form #formTable .submit{ 
  width:190px;
  height:60px;
  font-size:16px;
  padding: 4px 10px;
  color: #fff;
  cursor: pointer;
  background: #333;
  border-radius: 0px 0px 0px 0px;
  text-align: center;
  border: none;
  box-shadow: none;
  font-weight: normal;
  margin-top: 50px;
  margin-right: 0;
}
.cp-form #formTable .submit:hover {
  background: #006F37;
}
/*------------------------------------------------------------*/
/*-- reset --*/
/*------------------------------------------------------------*/
.cp-form .reset{
	width:130px;
	height:50px;
	font-size:16px;
	font-weight:bold;
	padding: 4px 10px;
	color: #666;
	background: #d9d9d9;
	border:1px solid #BBBBBB;
}
.cp-form span.edit_success { color:#61915D;font-weight:bold; }
.cp-form input[type="text"] {
	border:1px solid #BBBBBB;
}
.cp-form input:hover,textarea:hover {
	border:1px solid #BBBBBB;
}
.cp-form input:focus,textarea:focus {
	border:1px solid #4790FF;
}
.w5 { width: 5px!important; }
.w10 { width: 10px!important; }
.w15 { width: 15px!important; }
.w20 { width: 20px!important; }
.w25 { width: 25px!important; }
.w30 { width: 30px!important; }
.w35 { width: 35px!important; }
.w40 { width: 40px!important; }
.w45 { width: 45px!important; }
.w50 { width: 50px!important; }
.w55 { width: 55px!important; }
.w60 { width: 60px!important; }
.w65 { width: 65px!important; }
.w70 { width: 70px!important; }
.w75 { width: 75px!important; }
.w80 { width: 80px!important; }
.w85 { width: 85px!important; }
.w90 { width: 90px!important; }
.w95 { width: 95px!important; }
.w100 { width: 100px!important; }
.w130 { width: 100px!important; }
.w150 { width:150px!important; }
.w160 { width:160px!important; }
.w170 { width:170px!important; }
.w180 { width:180px!important; }
.w190 { width:190px!important; }
.w200 { width:200px!important; }
.w250 { width:250px!important; }
.w300 { width:300px!important; }
.w350 { width:350px!important; }
.w400 { width:400px!important; }
.w450 { width:450px!important; }
.w500 { width:500px!important; }
@media screen and (max-width: 960px) {
  .cp-form #formTable{
    border-top: #bbb 1px solid;
  }
  .cp-form #formTable > tbody > tr > th,
  .cp-form #formTable > tbody > tr > td {
    display: block;
    width: 100%;
    border-top: none;
  }
  .cp-form #formTable > tbody > tr > th::after,
  .cp-form #formTable > tbody > tr > td::after{
    content: "";
    display: block;
    clear: both;
  }
  .cp-form input[type="radio"],
  .cp-form input[type="checkbox"]{
    border: 1px solid #bbb;
  }
  .cp-form #formTable .checkInput{
    display: block;
  }
  .cp-form #formTable .formSelect select{
    width: 100%;
  }
}