@charset "utf-8";


/*--------------------------------------------------------------------------
Kyoto Sangyo University
* version: 1.0
* author : loftwork Inc.
--------------------------------------------------------------------------*/



/*-------------------------------------
body
-------------------------------------*/
html {
  height:100%;
}
body {
  height:100%;
  background-color:transparent;
}



/*-------------------------------------
common
-------------------------------------*/
#header,
#pagetop,
#footer {
  line-height:1;
  font-family:"Helvetica Neue",Helvetica,Arial,"游ゴシック","YuGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
#container:after,
#header:after,
#footer:after {
  display:none !important;
}
#header p,
#pagetop p,
#footer p {
  margin:0;
  line-height:1;
}
#header a,
#footer a {
  text-decoration:none;
}
#header a,
#header a:before,
#header a:after,
#footer a,
#footer a:before,
#footer a:after {
  -webkit-transition:background-color .2s, border-color .2s, color .2s, opacity .2s;
  transition:background-color .2s, border-color .2s, color .2s, opacity .2s;
}
#header img,
#footer img {
  max-width:100%;
  vertical-align:top;
}
/* all */
#header *:last-child,
#footer *:last-child {
  margin-bottom:0 !important;
}
#header *,
#header *:before,
#header *:after,
#footer *,
#footer *:before,
#footer *:after {
  box-sizing:border-box;
}
/* list */
#header ul,#header ol,#header dl,
#header li,#header dt,#header dd,
#footer ul,#footer ol,#footer dl,
#footer li,#footer dt,#footer dd {
  margin:0;
  padding:0;
}
#header li,#header dt,#header dd,
#footer li,#footer dt,#footer dd {
  list-style-type:none;
}
#header .inner,
#footer .inner {
  position:relative;
  width:1020px;
  margin:0 auto;
}

/* clearfix
-------------------------------------*/
.cf:before,.inner:before,
.cf:after, .inner:after {content:"";display:table;}
.cf:after, .inner:after {clear:both;}



/*-------------------------------------
header
-------------------------------------*/
#header {
  font-size:88.24%;
  background-image:url(/common-wr/img/header_bg.png);
  background-position:0 -webkit-calc(100% - 30px);
  background-position:0 calc(100% - 30px);
  background-repeat:repeat-x;
  border:0;
}
#header a,
#header span {
  display:block;
  text-decoration:none;
}

/* logo
-------------------------------------*/
#h-logo {margin:26px 0;}
#h-logo a {width:200px;}
#h-logo a:hover {opacity:.7;}

/* nav : menu, target
-------------------------------------*/

/* menu
-------------------------------------*/
/* link */
#h-link {
  font-weight:bold;
  text-align:center;
}
/* lang */
#h-lang {font-weight:bold;}
/* search */
#h-search form {position:relative;}
#h-search input {
  margin:0;
  padding:0;
  border:0;
}
#h-search input[type="text"] {
  padding:4px 8px;
  color:#333;
  background-color:#fff;
}
#h-search input[type="submit"] {
  background-repeat:no-repeat;
  background-position:50% 50%;
  white-space:nowrap;
  text-indent:120px;
  overflow:hidden;
}
/* gnav */
#h-gnav .subnav {display:none;}
#h-gnav .subnav-inner {line-height:1.4;}
#h-gnav .subnav dt a {background-repeat:no-repeat;}
#h-gnav .subnav dd a {
  padding:8px 20px 8px 32px;
  color:#333;
  background:url(/common-wr/img/tri_right_blue.png);
  background-repeat:no-repeat;
  background-size:6px;
}

/* menu
-------------------------------------*/
/* link */
#h-link ul {
  position:absolute;
  top:12px;
  right:460px;
  padding:6px 0;
  border-right:1px dotted #039;
}
#h-link li {
  display:table-cell;
  padding-right:20px;
}
#h-link li a {color:#039;}
#h-link li a:hover {opacity:.7;}
#h-link p,
#h-link p a {background-image:url(/common-wr/img/header_request.png);}
#h-link p {
  position:absolute;
  top:0;
  right:0;
  background-position:0 -40px;
}
#h-link p a {
  width:120px;
  height:40px;
  white-space:nowrap;
  text-indent:100%;
  overflow:hidden;
}
#h-link p a:hover {opacity:0;}
/* lang */
#h-lang {
  position:absolute;
  z-index:2;
  top:12px;
  right:360px;
}
#h-lang p {
  cursor:pointer;
  padding:6px 12px;
  padding-right:24px;
  color:#039;
  background-color:#fff;
  background-image:url(/common-wr/img/arrow_bottom_blue.png);
  background-repeat:no-repeat;
  background-position:-webkit-calc(100% - 8px) 50%;
  background-position:calc(100% - 8px) 50%;
  background-size:8px;
}
#h-lang p.js-active {
  color:#fff;
  background-color:#039;
  background-image:url(/common-wr/img/arrow_bottom_white.png);
}
#h-lang ul {
  display:none;
  color:#333;
  background-color:#fff;
  border:1px solid #039;
}
#h-lang li a,
#h-lang li span {padding:8px 12px;}
#h-lang li a {color:#666;}
#h-lang li a:hover {color:#ff3a6d;}
#h-lang li span {background:#dae6ff;}
/* search */
#h-search {
  position:absolute;
  top:10px;
  right:140px;
}
#h-search input[type="text"] {
  width:156px;
  height:26px;
  line-height:18px;
  background-color:#efefef;
  border-radius:4px 0 0 4px;
}
#h-search input[type="submit"] {
  width:32px;
  height:26px;
  background-color:#747474;
  background-image:url(/common-wr/img/header_search_pc.png);
  background-size:14px;
  border-radius:0 4px 4px 0;
}
/* sitemap */
#h-sitemap {display:none;}
/* gnav */
#h-gnav {
  position:relative;
  display:table;
}
#h-gnav > li {
  display:table-cell;
  border-right:1px solid #4d71b8;
}
#h-gnav > li:last-child {border-right:0;}
#h-gnav > li > a {
  width:112px;
  height:80px;
  background-color:#039;
  background-image:url(/common-wr/img/header_gnav_pc.png);
  white-space:nowrap;
  text-indent:120px;
  overflow:hidden;
}
#h-gnav > li:nth-child(2n) > a {width:113px;}
#h-gnav > li > .current {background-color:#00246b !important;}
#h-gnav .gnav01 > a {background-position:0 0;}
#h-gnav .gnav02 > a {background-position:-113px 0;}
#h-gnav .gnav03 > a {background-position:-226px 0;}
#h-gnav .gnav04 > a {background-position:-339px 0;}
#h-gnav .gnav05 > a {background-position:-452px 0;}
#h-gnav .gnav06 > a {background-position:-566px 0;}
#h-gnav .gnav07 > a {background-position:-680px 0;}
#h-gnav .gnav08 > a {background-position:-793px 0;}
#h-gnav .gnav09 > a {background-position:-907px 0;}
#h-gnav > li:hover > a {background-color:#00246b;}
#h-gnav .gnav01:hover > a {background-position:0 -80px;}
#h-gnav .gnav02:hover > a {background-position:-113px -80px;}
#h-gnav .gnav03:hover > a {background-position:-226px -80px;}
#h-gnav .gnav04:hover > a {background-position:-339px -80px;}
#h-gnav .gnav05:hover > a {background-position:-452px -80px;}
#h-gnav .gnav06:hover > a {background-position:-566px -80px;}
#h-gnav .gnav07:hover > a {background-position:-680px -80px;}
#h-gnav .gnav08:hover > a {background-position:-793px -80px;}
#h-gnav .gnav09:hover > a {background-position:-907px -80px;}
#h-gnav > li:hover > .js-default {background-color:#039;}
#h-gnav .gnav01:hover > .js-default {background-position:0 0;}
#h-gnav .gnav02:hover > .js-default {background-position:-113px 0;}
#h-gnav .gnav03:hover > .js-default {background-position:-226px 0;}
#h-gnav .gnav04:hover > .js-default {background-position:-339px 0;}
#h-gnav .gnav05:hover > .js-default {background-position:-452px 0;}
#h-gnav .gnav06:hover > .js-default {background-position:-566px 0;}
#h-gnav .gnav07:hover > .js-default {background-position:-680px 0;}
#h-gnav .gnav08:hover > .js-default {background-position:-793px 0;}
#h-gnav .gnav09:hover > .js-default {background-position:-907px 0;}
#h-gnav .subnav {
  position:absolute;
  z-index:10;
  left:0;
  top:78px;
}
#h-gnav .subnav-inner {
  position:relative;
  z-index:2;
  display:table;
  table-layout:fixed;
  width:1020px;
  background:#fff;
}
#h-gnav .subnav dl {
  display:table-cell;
  min-width:254px;
  border-right:1px solid #a6a6a6;
}
#h-gnav .subnav dl:last-child {border-right:0;}
#h-gnav .subnav dl.wide {
  width:510px;
  background-image:url(/common-wr/img/header_gnav_line.png);
  background-repeat:repeat-y;
  background-position:254px 0;
}
#h-gnav .subnav dl.wide dd ul {
  float:left;
  width:254px;
}
#h-gnav .subnav dl.wide dd ul + ul {margin-left:1px;}
#h-gnav .subnav dt a,
#h-gnav .subnav dt span {
  padding:0 20px;
  line-height:60px;
  font-weight:bold;
  font-size:117.65%;
  background-color:#e3e3e3;
}
#h-gnav .subnav dt a {
  padding-right:40px;
  color:#039;
  background-color:#e3e3e3;
  background-image:url(/common-wr/img/arrow_right_pink.png);
  background-position:-webkit-calc(100% - 20px) 50%;
  background-position:calc(100% - 20px) 50%;
  background-size:8px;
}
#h-gnav .subnav dt a:hover {
  color:#ff3a6d;
  background-color:#d7d7d7;
}
#h-gnav .subnav dt span {color:#5b5b5b;}
#h-gnav .subnav dd {padding:12px 0;}
#h-gnav .subnav dd:before,
#h-gnav .subnav dd:after {content:"";display:table;}
#h-gnav .subnav dd:after {clear:both;}#h-gnav .subnav dd a {
  padding:8px 20px 8px 36px;
  background-position:20px -webkit-calc(8px + .35em);
  background-position:20px calc(8px + .35em);
}
#h-gnav .subnav dd a:hover {
  background-color:#f2f2f2;
  background-image:url(/common-wr/img/tri_right_pink.png);
}
#h-gnav .subnav-back {
  position:fixed;
  left:0;
  top:180px;
  width:100%;
  height:100%;
  margin-top:-2px;
  background:#000;
  opacity:.7;
}
#h-gnav .subnav-close {
  position:relative;
  z-index:2;
  margin-top:25px;
  padding-top:25px;
  color:#fff;
  font-size:73.53%;
  text-align:center;
  background-image:url(/common-wr/img/header_close.png);
  background-repeat:no-repeat;
  background-position:50% 0;
  background-size:20px;
}

/* target
-------------------------------------*/
#h-target {
  position:absolute;
  top:60px;
  right:0;
}
#h-target a {
  padding-left:12px;
  color:#333;
  background-image:url(/common-wr/img/tri_right_gray.png);
  background-repeat:no-repeat;
  background-position:0 50%;
  background-size:6px;
}
#h-target a:hover {
  color:#717171;
  background-image:url(/common-wr/img/tri_right_pink.png);
}
#h-target ul {
  padding-left:18px;
  background-image:url(/common-wr/img/header_target.png);
  background-repeat:no-repeat;
  background-size:18px;
}
#h-target li {
  display:inline-block;
  margin-left:15px;
  padding:2px 0;
}



/*-------------------------------------
header fixed
-------------------------------------*/
.fixed #header {
  position:fixed;
  z-index:5;
  left:0;
  top:0;
  width:100%;
  background-position:0 -webkit-calc(100% - 20px);
  background-position:0 calc(100% - 20px);
}
.fixed #header .inner {padding-top:0;}
.fixed #h-logo {margin:10px 0;}
.fixed #h-logo a {width:150px;}
.fixed #h-lang,
.fixed #h-search {display:none;}
.fixed #h-gnav > li > a {height:38px;}
.fixed #h-gnav .gnav01 > a {background-position:0 -42px;}
.fixed #h-gnav .gnav02 > a {background-position:-113px -42px;}
.fixed #h-gnav .gnav03 > a {background-position:-226px -42px;}
.fixed #h-gnav .gnav04 > a {background-position:-339px -42px;}
.fixed #h-gnav .gnav05 > a {background-position:-452px -42px;}
.fixed #h-gnav .gnav06 > a {background-position:-566px -42px;}
.fixed #h-gnav .gnav07 > a {background-position:-680px -42px;}
.fixed #h-gnav .gnav08 > a {background-position:-793px -42px;}
.fixed #h-gnav .gnav09 > a {background-position:-907px -42px;}
.fixed #h-gnav .gnav01:hover > a {background-position:0 -122px;}
.fixed #h-gnav .gnav02:hover > a {background-position:-113px -122px;}
.fixed #h-gnav .gnav03:hover > a {background-position:-226px -122px;}
.fixed #h-gnav .gnav04:hover > a {background-position:-339px -122px;}
.fixed #h-gnav .gnav05:hover > a {background-position:-452px -122px;}
.fixed #h-gnav .gnav06:hover > a {background-position:-566px -122px;}
.fixed #h-gnav .gnav07:hover > a {background-position:-680px -122px;}
.fixed #h-gnav .gnav08:hover > a {background-position:-793px -122px;}
.fixed #h-gnav .gnav09:hover > a {background-position:-907px -122px;}
.fixed #h-gnav .gnav01:hover > .js-default {background-position:0 -42px;}
.fixed #h-gnav .gnav02:hover > .js-default {background-position:-113px -42px;}
.fixed #h-gnav .gnav03:hover > .js-default {background-position:-226px -42px;}
.fixed #h-gnav .gnav04:hover > .js-default {background-position:-339px -42px;}
.fixed #h-gnav .gnav05:hover > .js-default {background-position:-452px -42px;}
.fixed #h-gnav .gnav06:hover > .js-default {background-position:-566px -42px;}
.fixed #h-gnav .gnav07:hover > .js-default {background-position:-680px -42px;}
.fixed #h-gnav .gnav08:hover > .js-default {background-position:-793px -42px;}
.fixed #h-gnav .gnav09:hover > .js-default {background-position:-907px -42px;}
/* sub */
.fixed #h-gnav .subnav {top:36px;}
.fixed #h-gnav .subnav-back {top:96px !important;}
.fixed #h-target {top:21px;}
.fixed #h-target a {
  padding-left:0;
  background-image:none;
}
.fixed #h-target a:hover {
  background-image:none;
}
.fixed #h-link ul {
  top:18px;
  right:560px;
  border-right:0;
}
.fixed #h-link p {display:none;}



/*-------------------------------------
pagetop
-------------------------------------*/
#pagetop a {
  position:relative;
  display:inline-block;
  width:54px;
  padding-top:60px;
  color:#039;
  font-size:10px;
  font-weight:bold;
  text-align:center;
}
#pagetop a:before {
  position:absolute;
  left:0;
  top:0;
  content:"";
  display:block;
  width:54px;
  height:54px;
  background-color:#039;
}
#pagetop a:after {
  position:absolute;
  left:21px;
  top:19px;
  content:"";
  display:block;
  width:0;
  height:0;
  border:6px solid #039;
  border-bottom:6px solid #fff;
}



/*-------------------------------------
footer
-------------------------------------*/
#footer {
  font-size:88.24%;
  background-color:#f2f2f2;
}

/* menu
-------------------------------------*/
#f-menu {background-color:#e2e2e2;}
#f-menu li {float:left;}
#f-menu li a {
  display:block;
  line-height:16px;
  padding-left:12px;
  color:#333;
  background:url(/common-wr/img/tri_right_blue.png);
  background-repeat:no-repeat;
  background-position:0 .4em;
  background-size:6px;
}
#f-menu li:last-child a {
  padding-left:25px;
  background-image:url(/common-wr/img/footer_menu_member.png);
  background-position:0 0;
  background-size:20px;
}

/* info : logo, social
-------------------------------------*/
/* social */
#f-social {font-weight:bold;}
#f-social a {
  display:block;
  color:#767676;
  background-repeat:no-repeat;
  background-position:0 50%;
}

/* copy
-------------------------------------*/
#f-copy {
  padding:20px;
  color:#fff;
  background-color:#039;
  text-align:center;
}
#f-copy small {font-size:inherit;}



/*-------------------------------------
pagetop
-------------------------------------*/
#pagetop {
  position:fixed;
  right:15px;
  bottom:15px;
  z-index:2;
}
#pagetop a:hover {color:#00246b;}
#pagetop a:hover:before {background-color:#00246b;}
#pagetop a:hover:after {
  border:6px solid #00246b;
  border-bottom:6px solid #faff40;
}



/*-------------------------------------
footer
-------------------------------------*/
/* menu
-------------------------------------*/
#f-menu {padding:15px 0;}
#f-menu li {margin-right:25px;}
#f-menu li:last-child {
  float:right;
  margin-right:0;
}
#f-menu li a:hover {color:#039;}

/* info : logo, social
-------------------------------------*/
#f-info .inner {
  display:table;
  line-height:1.4;
  padding:30px 0;
}
#f-info .inner > * {
  display:table-cell;
  vertical-align:middle;
}
#f-info a:hover {opacity:.7;}
/* logo */
#f-logo dt,
#f-logo dd {
  display:inline-block;
  vertical-align:middle;
}
#f-logo dt img {width:177px;}
#f-logo dd {
  margin-left:20px;
  font-size:108.33%;
}
/* social */
#f-social {text-align:right;}
#f-social dt {display:none;}
#f-social dd li {
  display:inline-block;
  margin-right:15px;
  padding:10px 0 10px 20px;
  border-left:1px solid #d2d2d2;
}
#f-social dd li:first-child {
  border-left:0;
  padding-left:0;
}
#f-social dd li:last-child {
  margin-right:0;
}
#f-social dd a {height:27px;}

/*-------------------------------------
contents
-------------------------------------*/
#contents {
}
.fixed #contents {
  padding-top:160px !important;
}
