@charset "utf-8";

/* ---------------------------------------------
 elements initialization 
------------------------------------------------ */

html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, sup,
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
canvas, iframe,
details, summary,
fieldset, form, label, legend,
table, caption,
tbody, tfoot, thead,
tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a img, fieldset, img{
  border:0;
  vertical-align:top;
}

abbr, acronym{
  border:0;
}

address, caption, cite, code, dfn, em, th, strong, var{
  font-style:normal;
  font-weight:normal;
}

caption, th{
  text-align:left;
}

code, kbd, pre, samp, tt{
  font-family:monospace;
  line-height:100%;
}

  /* for IE7 */
  *+html code, kbd, pre, samp, tt{
    font-size:108%;
  }

h1, h2, h3, h4, h5, h6{
  font-size:100%;
  font-weight:bold;
}

input, select, textarea{
  font-size:100%;
}

ol, ul, li{
  list-style:none;
}

q:before, q:after{
  content:'';
}

table{
  border-collapse:collapse;
  border-spacing:0;
  font-size:100%;
}

hr{
  display: none;
}

strong{
  font-weight: bold;
}

em{
  font-style:italic;
}

p{
  text-align: justify;
  text-justify: inter-ideograph;
}


/* ------ form --------------------------------- */

button, fieldset, form, input, 
label, legend, select, textarea{  
  font-size:100%;  
  font-style:inherit;  
  font-weight:inherit;  
  margin:0;  
  padding:0;  
  vertical-align:baseline;  
}  

input, textarea{
  vertical-align:middle;
  padding:1px;
}

textarea{
  width: 98%;
}

input[type="radio"],
input[type="checkbox"]{
  vertical-align:baseline;
  margin-right:3px;
}

/* ------ font --------------------------------- */

html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    line-height: 1.7;
	text-align:center;
	height:100%;
	-webkit-text-size-adjust: 100%; /* 2 */
	-ms-text-size-adjust: 100%; /* 2 */
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
}


/* ------ links color -------------------------- */

a:link,
a:visited,
a:hover,
a:active{
  text-decoration:none;
}

a{
  color:#008ea4;
  -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
a:link          { color:#008ea4; }
a:visited       { color:#008ea4; }
a:hover,a:active{ color:#18c1db; }


/* ------ clearfix scheme ---------------------- */

div:after {
  visibility:hidden;
  display:block;
  font-size:0;
  content:" ";
  clear:both;
  height:0;
}
* html div             { zoom:1; } /* IE6 */
*:first-child+html div { zoom:1; } /* IE7 */

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, div:after { 
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0; }  
}

/* ---------------------------------------------
 base modules
------------------------------------------------ */
.wrap{
  min-width: 1280px;
 clear:both; }

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

.inner {
  width: 1200px;
  margin: 0 auto;
}

.pc { display: block !important; }
span.pc { display: inline !important; }
.sp { display: none !important; }

.ma-none{  margin:0 !important;}

/* --- openwin --- */

.openwin{ 
  padding-left: 10px;
  vertical-align:middle;
}

/* --- btn --- */

.btn { display: inline-block; margin-right: 20px; }
.btn a {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  display: inline-block;
  min-width: 300px;
  height:60px;
  font-size: 1.8rem;
  font-weight:bold;
  padding: 0 20px;
  letter-spacing:1px;
  line-height:58px;
  background: #18c1db;
  color: #fff;
  border:3px solid #18c1db;
  border-radius: 50px;
  text-decoration: none;
  text-align: center;
  position: relative;
  transition: all 0.3s ease;
}
.btn a:hover {
  border-color: #18c1db;
  background: #fff;
  color: #18c1db;
}

/* ---------------------------------------------
 header
------------------------------------------------ */

.header{
  width:100%;
  height:80px;
  margin:0 auto;
  position:fixed;
  background:#fff;
  z-index:100;
}

.header h1{
  float:left;
  margin-top:18px;
}

.header .global-navigation{
  float:right;
  width:840px;
  background:url(/themes/kagawa-u_dpec/images/bg_gnav_on.png) no-repeat 0 0;
}

.global-navigation li{
  float:left;
  width:120px;
  font-size:1.6rem;
  font-weight:bold;
  text-align:center;
  letter-spacing:-1px;
  background-color:#fff;
  background-repeat:no-repeat;
  background-position:center 0;
}

.global-navigation li a{
  color:#333;
  display:block;
  padding-top:48px;
  height:80px;
  text-decoration:none;
}

.global-navigation li:first-child{
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav01.png);
}
.global-navigation li:nth-child(2){
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav02.png);
}
.global-navigation li:nth-child(3){
 background-image:url(/themes/kagawa-u_dpec/images/bg_gnav03.png);
}
.global-navigation li:nth-child(4){
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav04.png);
}
.global-navigation li:nth-child(5){
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav05.png);
}
.global-navigation li:nth-child(6){
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav06.png);
}
.global-navigation li:last-child{
  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav07.png);
}

.global-navigation li:hover,
.global-navigation li a:hover{
  color:#18c1db;
  background-image:none;
}

.global-navigation li:hover{
  background-color:transparent;
}


/* ---------------------------------------------
 footer
------------------------------------------------ */

.footer{
  width:100%;
  background:#fafafa;
}

p.pagetop{
  width:1200px;
  margin:0 auto;
  text-align:right;
}

.pagetop a{
  display:inline-block;
  position:relative;
  width:52px;
  height:52px;
  margin-top:-25px;
}

.pagetop a::before{
  display:block;
  content:'';
  background-color:#666;
  width:52px;
  height:52px;
  border-radius:100%;
}

.pagetop a:hover::before{
  background-color:#333;
}

.pagetop a::after {
	display: block;
	content: '';
	position: absolute;
	top: 46%;
	right:21px;
	margin:auto;
	width: 8px;
	height: 8px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


.footer-nav{
  width:1200px;
  margin:0 auto;
  padding:50px 0;
  font-size:1.8rem;
}

.footer-nav a:link,
.footer-nav a:visited{
  color:#333;
}
.footer-nav a:hover,
.footer-nav a:active{
  color:#333;
  text-decoration:underline;
}

.footer-nav ul{
  float:left;
  margin-left:50px;
  text-align:left;
  line-height:3;
}

.footer-nav ul ul{
  float:none;
  margin:0 0 0 13px;
  font-size:1.6rem;
  line-height:1.7;
}

.footer-nav ul li.ch-list{
  float:left;
}

.blue-line{
  padding:20px 0;
  background:#18c1db;
  color:#fff;
  
}

.blue-line a{
  color:#fff!important;
}

.blue-line a:hover,
.blue-line a:active{
  color:#fff;
  text-decoration:underline;
}

.blue-line ul{
  width:1200px;
  margin:0 auto;
}

.blue-line ul li{
  float:left;
  line-height:1;
  padding:0 0 0 20px;
  display:inline;
}

.blue-line ul li:first-child{
  border-right:1px solid #fff;
  padding:0 20px 0 0;
}

.blue-line ul li:last-child{
  float:right;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size:1.1rem;
}

/* ---------------------------------------------
 container
------------------------------------------------ */

.wrap{
  padding-top:80px;
}

.container.local{
  width:1200px;
  margin:0 auto 70px;
  text-align:left;
}

/* --- content --- */

.content{
  float:left;
  width:840px;
}

/* --- sidebar --- */

.sidebar{
  float:right;
  width:320px;
  text-align:left;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top:90px;
}

.sidebar .local-bn li{
  width:100%;
  height:80px;
  margin-bottom:10px;
  position:relative;
  text-align:left;
}

.sidebar .local-bn li a{
  display:block;
  width:100%;
  height:80px;
  border:3px solid #fafafa;
  color:#18c1db;
  font-weight:bold;
  font-size:2rem;
  line-height:1;
}

.sidebar .local-bn li a:hover{
  color:#18c1db;
  border:3px solid #18c1db;
}

.sidebar .local-bn li::before {
    content: "";
	display:block;
    bottom: 5px;
    right: 5px;
    border-top: 10px solid transparent;
    border-right: 10px solid #18c1db; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 3;
}

.sidebar .local-bn li a{
  background:#fafafa url(images/icon_h01_on.png) no-repeat 27px 20px;
  background-size:54px 40px;
  padding:30px 0 0 90px;
}

.sidebar .local-bn li:last-child a{
  background:#fafafa url(images/icon_h02_on.png) no-repeat 20px 20px;
  background-size:54px 40px;
  padding:18px 0 0 90px;
}

/*  local-navigation */

.local-navigation{
  clear:both;
  margin:40px 0 0;
}

.local-navigation h2{
  font-size:1.8rem;
}

.local-navigation li{
  position:relative;
  margin-top:10px;
  padding:0 0 0 15px;
}

.local-navigation li::before{
  content:'';
  display:block;
  position:absolute;
  top:0.5em;
  left:0;
  border-top: solid 5px transparent;
  border-right: solid 5px transparent;
  border-bottom: solid 5px transparent;
  border-left: solid 5px #18c1db;
}

.local-navigation ul.back-list{
  overflow:hidden;
}

.local-navigation ul.back-list li{
  float:left;
  width:33.3%;
}

.local-navigation li a.active{ 
	font-weight:bold; 
}

/* --- toppage --------------------------------------------------------- */

.keyvisual{
  width:100%;
  height:650px;
  background:url(/themes/kagawa-u_dpec/images/keyvisual_01.png) no-repeat center 0;
  background-size:cover;
  border-top:1px solid #ddd;
  position:relative;
}

.keyvisual p{
  position:absolute;
  top:127px;
  left:0;
  right:0;
  margin:0 auto;
  font-size:5.5rem;
  font-weight:bold;
  text-align:center;
  line-height:1.4;
  text-align:center;
}

.keyvisual p span{
  display:block;
  font-size:2rem;
  letter-spacing:2px;
}

.keyvisual p span span{
  display:inline-block;
  padding:0 0.5em;
}

/* --- course-area --- */

.course-area{
  width:100%;
  margin:0 auto 60px;
  padding-bottom:100px;
  background:#fafafa;
  position:relative;
}

.course-box{
  float:left;
  position:relative;
  width:399px;
  height:370px;
  margin-top:-217px;
  margin-left:1px;
  background:#fff;
  text-align:center;
}

.course-box h2{
  width:379px;
  margin:-19px auto 0;
  padding:3px 0;
  font-size:1.5rem;
  font-weight:normal;
  letter-spacing:-1px;
  color:#fff;
  background-color:#18c1db;
}

.course-box h3{
  margin:10px 30px 0;
  font-size:2.4rem;
  letter-spacing:-1px;
}

.course-box h3 span{
  font-size:2.8rem;
}

.course-box h3 + p{
  font-size:1.6rem;
  font-weight:bold;
  text-align:center;
}

.course-box p{
  margin:0 30px;
  font-size:1.5rem;
}

.course-box p.i-course{
  width:339px;
  height:200px;
  overflow:hidden;
  margin:15px auto 0;
}

.course-box p.i-course img{
  width:100%;
  height:auto;
}

.course-area .btn{
  position:absolute;
  bottom:-30px;
  left:0;
  right:0;
  margin:0 auto;
}

/* --- news-area --- */

.news-area{
  width:1200px;
  margin:0 auto 60px;
  text-align:left;
}

.news-area h2,
.report-area h2{
  text-align:left;
  font-size:2.4rem;
}

.news-area h2 a,
.report-area h2 a{
   display:inline-block;
   font-size:1.8rem;
   position:relative;
   margin-left:30px;
   padding-left:15px;
}

.news-area h2 a::after,
.report-area h2 a::after{
	display: block;
	content: '';
	position: absolute;
	top: 40%;
	left:0;
	width: 6px;
	height: 6px;
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.news-area ul{
  margin:25px auto 0;
  border-top:1px solid #ccc;
}

.news-area ul li{
   border-bottom:1px solid #ccc;
   line-height:1;
}

.news-area dt{
	clear:left;
	float:left;
	width:8.5em;
	font-size:1.6rem;
}

.news-area dd{
  padding:0 0 0 8.5em;
  font-size:1.8rem;
}

.news-area li a{
  position:relative;
  display:block;
  padding:15px 40px 10px 10px;
}

.news-area li a::after{
	display: block;
	content: '';
	position: absolute;
	top: 40%;
	right:20px;
	width: 6px;
	height: 6px;
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* --- report-area --- */

.report-area{
  margin-bottom:60px;
  padding:50px 0;
  background:#fafafa;
}

.report-area ul{
  margin-top:30px;
}

.report-area li{
  float:left;
  width:270px;
  margin-left:40px;
  text-align:left;
}

.report-area li:first-child{
  margin-left:0;
}

.report-area li dt{
  width:270px;
  height:160px;
  margin-bottom:1em;
  overflow:hidden;
}

.report-area li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
 }

.report-area li dt img{
  width:100%;
  height:auto;
}

.report-area li dd{
  font-size:1.8rem;
}

.report-area li dd + dd{
  font-size:1.6rem;
  color:#666;
}

/* --- report-area_list --- */

.report-area_list{
  margin-bottom:60px;
  padding:1px 0 0px;
	width: 100%;
}

.report-area_list li{
  float:left;
  width:240px;
  margin:0 0 50px 30px;
  text-align:left;
}

.report-area_list li:first-child{
  margin-left:30;
}

.report-area_list li dt{
  width:270px;
  height:161px;
  margin-bottom:1em;
  overflow:hidden;
}

.report-area_list li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
 }

.report-area_list li dt img{
  width:100%;
  height:auto;
}

.report-area_list li dd{
  font-size:1.8rem;
}

.report-area_list li dd + dd{
  font-size:1.6rem;
  color:#666;
}

.report-area_list ul {
	margin:0;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	width:100%;
}

.report-area_list ul li {
	margin:0 15px 50px 0;        
	width:270px;
	list-style:none;
}

.report-area_list ul li:nth-child(3n){ margin-right: 0; }

.report-area_list ul li dt img{ border: 1px solid #eee; }

.report-area_list .pager-navigation ul {
	margin: 0;
	border: none;
}

.report-area_list .pager-navigation li {
	border: none;
}

.report-area_list .pager-navigation li span {
	background: #e7f6f9;
	color: #333;
	display: block;
	line-height: 40px;
	width: 40px;
	height: 40px;
	text-align: center;
}

.report-area_list .pager-navigation li.currentPage a {
	background: #18c1db;
	color: #fff;
	display: block;
	line-height: 40px;
	width: 40px;
	height: 40px;
	text-align: center;
}

.pager-navigation ul li a:link, .pager-navigation ul li a:visited {
	background: #d1f3f8;
	color: #333;
	display: block;
	line-height: 40px;
	width: 40px;
	height: 40px;
	text-align: center;
}

.report-area_list .pager-navigation ul li:nth-child(3n) {
	margin-right: 1px;
}

/* --- banner --- */

.banner{
  margin-bottom:60px;
}

.banner ul{
  width:1200px;
  margin:0 auto;
}

.banner li{
  float:left;
  width:570px;
  height:100px;
  position:relative;
  text-align:left;
}

.banner li:first-child{
  margin-right:60px;
}

.banner li a{
  display:block;
  width:100%;
  height:100px;
  border:3px solid #18c1db;
  color:#fff;
  font-weight:bold;
}

.banner li a:hover{
  color:#18c1db;
}

.banner li::before {
    content: "";
	display:block;
    bottom: 10px;
    right: 10px;
    border-top: 19px solid transparent;
    border-right: 19px solid #fff; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}

.banner li:hover::before {
    border-right: 19px solid #18c1db; /* ラベルの色はここで変更 */
}

.banner li a{
  background:#18c1db url(images/icon_h01.png) no-repeat 40px 30px;
  background-size:54px 40px;
  padding:0 0 0 120px;
}

.banner li a:hover{
  background:#fff url(images/icon_h01_on.png) no-repeat 40px 30px;
  background-size:54px 40px;
}

.banner li:last-child a{
  background:#18c1db url(images/icon_h02.png) no-repeat 40px 30px;
  background-size:54px 40px;
  padding:0 0 0 116px;
}

.banner li:last-child a:hover{
  background:#fff url(images/icon_h02_on.png) no-repeat 40px 30px;
  background-size:54px 40px;
}

.banner li dt{
  font-size:3rem;
  padding-top:8px;
}

.banner li dd{
  font-size:1.8rem;
  margin-left:5px;
  line-height:1;
}

/* ---- /topここまで ----- */


/* --- 共通パーツ --------------------------------------------------------- */

.page-title{
  width:100%;
  height:180px;
  line-height:180px;
  font-size:3.6rem;
  background-image:url(/themes/kagawa-u_dpec/images/bg_title.png);
  background-position: center 0;
  background-size:cover;
  border-top:1px solid #ddd;
}

/* ------ topic-path --------------------------- */

.topic-path{
	width:100%;
	margin:-15px auto 40px;
	font-size:1.2rem;
	position:relative;
}

.topic-path li{
	background:#fff;
	display:inline-block;
	vertical-align:middle;
	margin:0 25px 0 0;
	padding:5px 10px 5px 15px;
	position:relative;

}

.topic-path li::before{
  content:'';
  display:block;
  position:absolute;
  top:0;
  right:-15px;
  border-top: 18px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 15px solid #fff;
}

.topic-path li:last-child{
	margin-right:0;
}

.topic-path a,
.topic-path a:link,
.topic-path a:hover,
.topic-path a:visited,
.topic-path a:active {
	text-decoration:none;
	display:block;
}


/* ------ title -------------------------------- */

.content h2{
  clear:both;
  margin:40px auto 0;
  padding:10px 15px;
  font-size:2rem;
  color:#fff;
  text-align:left;
  background:#18c1db;
}

.content h2:first-child{
  margin-top:0;
}

.content h3{
  clear:both;
  margin:30px 0 0;
  padding:10px 0 6px 15px;
  font-size:2rem;
  border-top:3px solid #18c1db;
  border-bottom:1px solid #18c1db;
}

.content h4{
  clear:both;
  display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  align-items: left;
  margin:30px 0 0;
  padding:0;
  font-size:1.8rem;
}

.content h4::after{
  content: "";
  display: inline; /* for IE */
  -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex: 1;
    flex-grow: 1;
  background-color:#18c1db;
  height:1px;
  margin:15px 0 0 10px;
}

.content h5{
  clear:both;
  margin:30px 0 0;
  font-size:1.8rem;
}

blockquote,
.blockquote{
  margin:50px auto 0;
  padding:30px 60px 30px 145px;
  background:#ddf6fa url(images/bg_blockquote.png) no-repeat 27px 0;
}

/* ------ p ----------------------------------- */

.content p{
  margin-top:20px;
}

/* ------ ul ----------------------------------- */

.list,
.link{
  margin:30px 0 0;
}


/* --- normal list --- */

.list li {
  padding-left: 15px;
  margin-bottom: 5px;
  position: relative;
}

.list li:before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  background: #18c1db;
  position: absolute;
  top: 0.6em;
  left: 0;
}

/* --- link list --- */

.link li {
  padding-left: 15px;
  margin-bottom: 5px;
  position: relative;
}
.link li .anchor { padding: 0; }

.link li:before {
  content: '';
  display: block;
  border-top: 5px solid transparent;
  border-bottom:5px solid transparent;
  border-left: 5px solid #6aa7cd;
  position: absolute;
  top: 0.5em;
  left: 0;
}

/* ------ faq -------------------------------- */

.faq-list dt{
	position:relative;
	padding:35px 80px;
	cursor:pointer;
	font-size:18px;
	font-size:1.8rem;
	color:#333;
	margin-top:28px;
	background:#ddf6fa url(images/icon_q.png) no-repeat 27px 30px;
}

.faq-list dt:after {
	content:'';
	display:block;
	position:absolute;
	top:30px;
	right:30px;
	width:32px;
	height:32px;
	background-image:url(/themes/kagawa-u_dpec/images/icon_plus.png);
	background-repeat:no-repeat;
	background-position:0 0;
}

.faq-list dt.active:after{
	background-image:url(/themes/kagawa-u_dpec/images/icon_minus.png);
}

.faq-list dd{
	display:none;
	font-size:15px;
	font-size:1.5rem;
	padding:0 80px 40px;
	color:#666;
	background-color:#ddf6fa;
}

/* --- index-list --- */

ul.index-list{
  margin:30px 0 0 -40px;
  overflow:hidden;
}

.index-list li{
  float:left;
  width:400px;
  margin:0 0 40px 40px;
}

.index-list li:hover{
  opacity: 0.6;
}

.index-list li dt{
  padding:15px 17px 10px;
  color:#fff;
  font-size:1.8rem;
  font-weight:bold;
  background-color:#18c1db;
  position:relative;
}

.index-list li dt::after{
  content:'';
  display:block;
  position:absolute;
  top:45%;
  right:15px;
  border-top: solid 5px transparent;
  border-right: solid 5px transparent;
  border-bottom: solid 5px transparent;
  border-left: solid 6px #fff;
}
  

.index-list li dd{
  padding:15px 17px 10px;
  color:#333;
  background-color:#d1f3f8;
}

/* ------ table -------------------------------- */

table{
  margin:30px 0 0;
  border-collapse:collapse;
  border:1px solid #6a6a6a;
  width:100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

}

table th,
table td{
  padding:10px;
  vertical-align:top;
  border:1px solid #18c1db;
  background:#fff;
}
table th.middle,
table td.middle { vertical-align: middle; }

table th{
  font-weight: bold;
  background:#f3fcfd;
}

table thead th,
th.head {
  background: #ddf6fa;
  text-align:center;
}

table.center th,
table.center td{
  text-align: center !important;
}

a.anchor{
	position:relative;
	padding:0 0 0 15px;
 }
 
 a.anchor::before{
	content:'';
	display:block;
	position:absolute;
	top:0.5em;
	left:0;
	border-top: solid 5px transparent;
	border-right: solid 5px transparent;
	border-bottom: solid 5px transparent;
	border-left: solid 5px #18c1db;
 }

/* --- お知らせ --- */

.entry-date{
  font-size:1.4rem;
  text-align:right;
}

/* entry-navigation */

.entry-navigation{
  background:#d1f3f8;
  overflow:hidden;
  height:40px;
  line-height:1;
}

.entry-navigation li{
  float:left;
  width:33.3%;
  width : -webkit-calc(100% / 3) ;
  width : calc(100% / 3) ;
  text-align:center;
  background-color:#d1f3f8;
}

.entry-navigation li a{
  display:block;
  line-height:40px;
}
@media all and (-ms-high-contrast: none) {
  .entry-navigation li a{
	  line-height:45px;
	}
}

.entry-navigation .entry-new{
  background-color:#d1f3f8;
   font-size:2rem;
}

.entry-navigation .entry-list{
  color:#fff;
  text-align:center;
  background-color:#18c1db;
  font-size:1.6rem;
}

.entry-navigation .entry-list a{
  color:#fff;
}

.entry-navigation .entry-list a:hover{
  color:#18c1db;
}

.entry-navigation .entry-list:hover{
  background-color:#fff;
}

.entry-navigation li.entry-old{
  float:right;
  background-color:#d1f3f8;
  font-size:2rem;
}

.entry-navigation li.entry-new:hover,
.entry-navigation li.entry-old:hover{
  background-color:#f3fcfd;
}

.entry-navigation .home{
  text-align:center;
  margin-top:-20px;
}

.entry-navigation ul:after {
  visibility:hidden;
  display:block;
  font-size:0;
  content:" ";
  clear:both;
  height:0;
}
* html .entry-navigation ul             { zoom:1; } /* IE6 */
*:first-child+html .entry-navigation ul { zoom:1; } /* IE7 */

/* pager-navigation */

.pager-navigation{
  margin:50px auto 0;
}

.pager-navigation ul li{
	float:left;
	text-align:center;
	margin-right:1px;
	line-height:1;
	width: 40px;
}

.pager-navigation ul li span.cur{
	background:#18c1db;
	color:#fff;
	display:block;
	line-height:40px;
	width:40px;
	height:40px;
	text-align:center;
}

.pager-navigation ul li a:link, 
.pager-navigation ul li a:visited{
	background:#d1f3f8;
	color:#333;
	display:block;
	line-height:40px;
	width:40px;
	height:40px;
	text-align:center;
}

.pager-navigation ul li a:hover, 
.pager-navigation ul li a:active{
	background:#18c1db;
	color:#fff;
}

/* --- social-icon --- */

.social-icon ul{
  text-align:center;
  margin:20px auto 40px;
}

.social-icon ul li{
  display:inline-block;
  margin:0 5px;
}

.social-icon ul li a {
	display: block;
	width: 50px;
	height: 50px;
	text-indent: -99999px;
	font-size: 50%;
	border-radius:50%;
}

.social-icon ul li .facebook{
  background:url(/themes/kagawa-u_dpec/images/icon_fb.png) no-repeat 0 0;
}

.social-icon ul li .twitter{
  background:url(/themes/kagawa-u_dpec/images/icon_twitter.png) no-repeat 0 0;
}

.social-icon ul li .line{
  background:url(/themes/kagawa-u_dpec/images/icon_line.png) no-repeat 0 0;
}

/* simple style */

.center{ text-align: center!important; }
.right { text-align: right!important; }

.img-r { float: right; margin: 0 0 10px 10px; }
.img-l { float: left; margin: 0 0 10px 10px; }

a[href*="tel:"] {
	display: inline-block;
	pointer-events: none;
	color: #333;
}

/* layout-frame */

.content .layout-frame{
	clear:both;
	margin-left:-20px;
}

.content .layout-3col{
	margin-left:-15px;
}

.content .layout-unit {
	float:left;
	display:inline;
	margin-left:20px;
}

.content .layout-3col .layout-unit {
	margin-left:15px;
}

.grid-1 { width: 75px; }
.grid-2 { width:130px; }
.grid-3 { width:200px; }
.grid-4 { width:270px; }
.grid-5 { width:340px; }
.grid-6 { width:410px; }
.grid-7 { width:480px; }
.grid-8 { width:550px; }
.grid-9 { width:620px; }
.grid-10{ width:690px; }
.grid-11{ width:760px; }


@media screen and (max-width: 896px) {

	/* ---------------------------------------------
	
	 for smartphone
	
	------------------------------------------------ */
	
	html{
	  font-size:62.5%;
	}
	
	ul{letter-spacing: -0.4em;}
	.android ul{letter-spacing: -1em;}
	ul li{letter-spacing: normal;}
	
	body{
	  font-size: 1.4rem;
	  width:100%;
	  overflow-x:hidden;
	}
	img{
	  max-width: 100%;
	  height: auto;
	}
	/* ---------------------------------------------
	 base modules
	------------------------------------------------ */
	.wrap{ 
	  min-width: 100%;
	  clear:both;
	  padding:0;
	  overflow: hidden;
	}
	
	body.on {
	  overflow: hidden;
	}
	
	.inner {
	  width: 94%;
	  margin: 0 auto;
	}
	
	.pc { display: none !important; }
	.sp { display: block !important; }
	span.sp { display: inline !important; }
	
	*,*:after,*:before{
	  box-sizing: border-box;
	}
	
	/* --- btn --- */

	.btn a {
	 
	  min-width: 60%;
	  height:40px;
	  font-size: 1.8rem;
	  line-height:35px;
	}
	
	/* --- margin ---- */
	
	.android .spmab01{ margin-bottom:75px!important;}
	
	/* ---------------------------------------------
	 header
	------------------------------------------------ */
	
	.header{
	  width:100%;
	  height:80px;
	  margin:0 auto;
	  position:relative;
	}
	
	.header .inner{
	  width:100%!important;
	  background-color:#fff;
	 }
	
	.header li{
	  float:left;
	}
	
	.header .logo{
	  position:fixed;
	  left:0;
	  top:0;
	  width:100%;
	  height:70px;
	  margin:0;
	  padding:15px 0 0 3%;
	  background-color:#fff;
	  z-index: 99;
	  overflow: hidden;
	}
	
	.header .logo a{ display:inline-block;}
	.header .logo img{ width: 70%; height:auto;}
	
	.header .menu-btn {
	  position:fixed;
	  right:10px;
	  top:10px;
	  z-index: 99;
	}
	.header .menu-btn a {
	  display: block;
	  width: 40px;
	  height: 40px;
	  background: url(/themes/kagawa-u_dpec/images/btn_menu_out.png) no-repeat;
	  background-size: 40px;
	  text-decoration: none;
	}
	
	.header .menu-btn a.on{
	  background-image:url(/themes/kagawa-u_dpec/images/btn_menu_cls.png);
	 }
	
	.header .mega-menu {
	  width:100%;
	  right: 0;
	  top: 0;
	  height: 0;
	  background: #18c1db;
	  position: fixed;
	  overflow-y: auto;
	  -webkit-overflow-scrolling: touch;
	  z-index: 98;
	  transition: all 0.6s ease;
	}
	.header .mega-menu.on {
	  height: 100vh;
	  opacity: 1;
	}
	.header .mega-menu-inner{
	  padding:70px 0 0;
	}
	
	.header .on .mega-menu-inner{
	  padding:70px 0 0;
	}
	.header .mega-menu .link-wrap {
	  display: block;
	  justify-content: space-between;
	  width: 100%;
	  padding:0;
	}
	
	.header .mega-menu .menulogo {
	  width: 100%;
	  height:70px;
	  background:#fff;
	}
	.header .mega-menu .menulogo a.toggle-btn{
	  display:block;
	  width: 40px;
	  margin:10px 10px 0 0;
	  float:right;
	}
	.header .mega-menu .menulogo a.toggle-btn img{
	  width: 40px;
	}
	
	.header .mega-menu .link-wrap ul {
	  background-color:#18c1db;
	  padding:15px 15px 0;
	}
	
	.header .mega-menu .link-wrap ul.lowtec{
	  padding:0 15px 15px;
	}
	.header .mega-menu .link-wrap ul.lowtec li{
	  margin:0 0 1px;
	}
	
	.header .mega-menu .link-wrap ul ul{
	  margin-top:1px;
	  padding:0;
	 }
	
	.header .mega-menu .link-wrap li {
	  float: none;
	  margin-bottom:15px;
	  text-align: left;
	  background:#fff;
	}
	
	.header .mega-menu .link-wrap li li{
	  margin:-1px 0 0;
	 }
	.header .mega-menu .link-wrap li a {
	  font-size: 1.3rem;
	  font-weight:bold;
	  color: #333;
	  text-decoration: none;
	  padding: 10px 18px 10px 10px;
	  display: block;
	  position: relative;
	}
	
	.header .mega-menu .link-wrap li li a{
	  font-weight:normal;
	 }
	.header .mega-menu .link-wrap li a::after {
		display: block;
		content: '';
		position: absolute;
		top: 50%;
		right:15px;
		width: 6px;
		height: 6px;
		border-right: 1px solid #333;
		border-bottom: 1px solid #333;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	
	.header .mega-menu .menu_btmclose{
	  width: 100%;
	  line-height: 1;
	  z-index:100;
	  position:relative;
	}
	.header .mega-menu .menu_btmclose img{
	  width:40px;
	  height:auto;
	  vertical-align: middle;
	  margin:0 auto;
	}
	
	.header .mega-menu ul.co-list{
	  position:relative;
	  margin-top:-20px;
	}
	
	.header .mega-menu ul.co-list li:first-child{
	  background-color:#fff;
	  width:100%;
	  padding:30px 0 20px;
	}
	
	.header .mega-menu ul.co-list li:first-child a{
	  display:inline-block;
	  padding:0 10px;
	  color:#333;
	}
	
	.header .mega-menu ul.co-list li:first-child img{
	  width:18px;
	  height:auto;
	}
	
	.header .mega-menu ul.co-list li:last-child{
	  font-size:1.1rem;
	  width:100%;
	  color:#fff;
	}
	
	.header .global-navigation{
	  float:none;
	  width:100%;
	  background:none;
	  margin-top:70px;
	}
	
	.global-navigation li{
	  float:left;
	  width:auto;
	  font-size:1.2rem;
	  font-weight:bold;
	  text-align:center;
	  letter-spacing:0;
	  border-left:1px solid #fff;
	  border-bottom:1px solid #fff;
	  background-color:#18c1db;
	  background-position:center 10px;
	}
	
	.global-navigation li span{  font-size:1rem; letter-spacing:-1px; }
	
	.global-navigation li a{
	  color:#fff;
	  display:block;
	  padding-top:40px;
	  height:65px;
	  text-decoration:none;
	}
	
	.global-navigation li:hover,
	.global-navigation li a:hover{
	  color:#fff;
	}
	
	.global-navigation li:first-child,
	.global-navigation li:first-child:hover{
	  width:33.3%;
	  background-image: url(/themes/kagawa-u_dpec/images/bg_gnav01_sp.png);
	  background-size:37px auto;
	  border-left:none;
	}
	.global-navigation li:nth-child(2),
	.global-navigation li:nth-child(2):hover{
	  width:33.3%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav02_sp.png);
	  background-size:37px auto;
	}
	.global-navigation li:nth-child(3),
	.global-navigation li:nth-child(3):hover{
	  width:33.3%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav03_sp.png);
	  background-size:37px auto;
	}
	.global-navigation li:nth-child(4),
	.global-navigation li:nth-child(4):hover{
	  width:25%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav04_sp.png);
	  background-size:37px auto;
	  border-left:none;
	}
	.global-navigation li:nth-child(5),
	.global-navigation li:nth-child(5):hover{
	  width:25%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav05_sp.png);
	  background-size:37px auto;
	}
	.global-navigation li:nth-child(6),
	.global-navigation li:nth-child(6):hover{
	  width:25%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav06_sp.png);
	  background-size:37px auto;
	}
	.global-navigation li:last-child,
	.global-navigation li:last-child:hover{
	  width:25%;
	  background-image:url(/themes/kagawa-u_dpec/images/bg_gnav07_sp.png);
	  background-size:37px auto;
	}
	
	.global-navigation li:hover{
	  background-image:inherit;
	  background-color:#18c1db;
	}
	
	/* ---------------------------------------------
	 footer
	------------------------------------------------ */
	
	.footer{
	  width:100%;
	  background:#fafafa;
	}
	
	p.pagetop{
	  width:100%;
	  margin:0 auto;
	  text-align:center;
	}
	
	.pagetop a{
	  width:40px;
	  height:40px;
	  margin-top:-20px;
	}
	
	.pagetop a::before{
	  width:40px;
	  height:40px;
	}
	
	.pagetop a:hover::before{
	  background-color:#666;
	}
	
	.pagetop a::after {
		position: absolute;
		top: 46%;
		right:17px;
		width: 6px;
		height: 6px;
	}
	
	.footer-nav{
	  display:none;
	}
	
	.blue-line{
	  padding:20px 0 0;
	  background:#fafafa;
	  color:#fff;
	  
	}
	
	.blue-line a{
	  color:#333!important;
	}
	
	.blue-line a:hover,
	.blue-line a:active{
	  color:#333;
	  text-decoration:underline;
	}
	
	.blue-line ul{
	  width:100%;
	  margin:0 auto;
	}
	
	.blue-line ul li{
	  float:none;
	  display:inline-block;
	  line-height:1;
	  padding:0 0 0 20px;
	  display:inline;
	}
	
	.blue-line ul li:first-child{
	  border-right:1px solid #333;
	  padding:0 20px 0 0;
	}
	
	.blue-line ul li a{
	  background-image:url(/themes/kagawa-u_dpec/images/icon_win_sp.png);
	  background-repeat:no-repeat;
	  background-position: right center;
	  background-size:9px 9px;
	  padding-right:20px;
	}
	
	.blue-line ul li a img{ display:none;}
	
	.blue-line ul li:last-child{
	  width:100%;
	  margin-top:10px;
	  padding:5px 0;
	  display:block;
	  float:none;
	  text-align:center;
	  font-size:1rem;
	  background:#18c1db;
	}
	
	/* ---------------------------------------------
	 container
	------------------------------------------------ */
	
	.container{
	  width:100%;
	}
	
	.container.local{
	  width:100%;
      margin:0 auto;
	}
	
	/* --- content --- */

	.content{
	  float:none;
	  width:94%;
	  margin:20px auto 0;
	}
	
	/* --- sidebar --- */
	
	.sidebar{
	  float:none;
	  width:94%;
	  margin:30px auto;
	}
	
	/* --- toppage --------------------------------------------------------- */
	
	.keyvisual{
	  width:100%;
	  height:250px;
	  background:url(/themes/kagawa-u_dpec/images/keyvisual_01_sp.png) no-repeat center 0;
	  background-size:cover;
	}
	
	.keyvisual p{
	  top:43px;
	  margin:0 auto;
	  font-size:2.4rem;
	  text-align:center;
	}
	
	.keyvisual p span{
	  display:block;
	  margin-top:10px;
	  font-size:1.6rem;
	  letter-spacing:0;
	}
	.keyvisual p span span{ display:none;}
	
	/* --- course-area --- */

	.course-area{
	  padding-bottom:1px;
	}
	
	.course-box{
	  float:none;
	  position:relative;
	  width:100%;
	  margin-top:0;
	  margin-left:0;
	  margin-bottom:50px;
	  text-align:center;
	  top:-25px;
	}
	
	.course-box h2{
	  width:94%;
	  margin:0 auto 0;
	  font-size:1.1rem;
	  position:absolute;
	  top:-15px;
	  left:0;
	  right:0;

	}
	
	.course-box h3{
	  margin: 0 0 0 3%;
	  padding: 20px 0 0;
	  font-size:2rem;
	  letter-spacing:-1px;
	  text-align:left;
	}
	
	.course-box h3 span{
	  font-size:2.4rem;
	}
	
	.course-box h3 + p{
	  text-align:left;
	}
	
	.course-box p{
	  margin:0 3%;
	}
	
	.course-box p.i-course{
	  width:94%;
	  height:187px;
	  overflow:hidden;
	  margin:15px auto 0;
	}
	
	.course-area .btn{
	  bottom:-20px;
	}
	
	/* --- news-area --- */

	.news-area{
	  width:100%;
	  margin:0 auto;
	}
	
	.news-area h2,
	.report-area h2{
	  font-size:2rem;
	  width:94%;
	  margin:0 auto;
	}
	
	.news-area h2 a,
	.report-area h2 a{
	   font-size:1.6rem;
	}
	
	.news-area ul{
	  margin:10px auto 0;
	}
	
	.news-area dt{
		float:none;
		width:auto;
		font-size:1.4rem;
		color:#333!important;
	}
	
	.news-area dd{
	  padding:10px 0 0;
	  font-size:1.5rem;
	  line-height:1.5;
	}
	
	/* --- report-area --- */
	
	.report-area{
	  margin-bottom:0;
	  padding:30px 0 10px;
	}
	
	.report-area ul{
	  margin-top:15px;
	}
	
	.report-area li{
	  width:50%;
	  margin-left:0;
	}
	
	.report-area li:first-child{
	  margin-left:0;
	}
	
	.report-area li dl{
	  width:94%;
	  margin:0 auto 23px;
	 }
	
	.report-area li dt{
	  width:162px;
	  height:96px;
	  margin-bottom:1em;
	  overflow:hidden;
	}
	
	.report-area li a:hover{
	  filter:alpha(opacity=100);
	  -moz-opacity: 1;
	  opacity: 1;
	 }
	
	.report-area li dt img{
	  width:100%;
	  height:auto;
	}
	
	.report-area li dd{
	  font-size:1.5rem;
	  line-height:1.4;
	}
	
	.report-area li dd + dd{
	  font-size:1.4rem;
	  color:#666;
	}
	
	/* --- banner --- */
	
	.banner{
	  margin-bottom:30px;
	}
	
	.banner ul{
	  width:94%;
	  margin:0 auto;
	}
	
	.banner li{
	  float:none;
	  width:100%;
	  height:65px;
	  text-align:left;
	  margin-bottom:5px;
	}
	
	.banner li:first-child{
	  margin-right:0;
	}
	
	.banner li a{
	  display:block;
	  width:100%;
	  height:65px;
	  border:none;
	}
	
	.banner li a:hover{
	  color:#fff;
	}
	
	.banner li::before {
	  content: "";
	  display:block;
	  bottom: 5px;
	  right: 5px;
	  border-top: 10px solid transparent;
	  border-right: 10px solid #fff; /* ラベルの色はここで変更 */
	}
	
	.banner li:hover::before {
	  border-right: 10px solid #fff; /* ラベルの色はここで変更 */
	}
	
	.banner li a{
	  background-color:#18c1db;
	  background-image:url(/themes/kagawa-u_dpec/images/icon_h01_sp.png);
	  background-position:15px 13px;
	  background-repeat:no-repeat;
	  background-size:40px 40px;
	  padding:0 0 0 70px;
	}
	
	.banner li a:hover{
	  background-color:#18c1db;
	  background-position:15px 13px;
	  background-image:url(/themes/kagawa-u_dpec/images/icon_h01_sp.png);
	  background-size:40px 40px;
	}
	
	.banner li:last-child a{
	  background-image:url(/themes/kagawa-u_dpec/images/icon_h02_sp.png);
	  background-position:15px 13px;
	  background-size:40px 40px;
	  padding:0 0 0 70px;
	}
	
	.banner li:last-child a:hover{
	  background-color:#18c1db;
	  background-image: url(/themes/kagawa-u_dpec/images/icon_h02_sp.png);
	  background-position:15px 13px;
	  background-size:40px 40px;
	}
	
	.banner li dt{
	  font-size:1.8rem;
	}
	
	.banner li dd{
	  font-size:1.2rem;
	  margin-left:0;
	}
	
	/* --- /topここまで ---*/

	/* 共通パーツ */
	
	.page-title{
	  width:100%;
	  font-size:3rem;
	}
	
	blockquote,
	.blockquote{
	  margin:30px auto 0;
	  padding:50px 20px 30px;
	  background:#ddf6fa url(images/bg_blockquote.png) no-repeat 20px 0;
	  background-size:40px auto;
	}
	
	.topic-path{ display:none;}
	
	/* ------ faq -------------------------------- */

	.faq-list dt{
		padding:15px 40px;
		cursor:pointer;
		font-size:18px;
		font-size:1.8rem;
		color:#333;
		margin-top:20px;
		background:#ddf6fa url(images/icon_q.png) no-repeat 15px 18px;
		background-size:20px auto;
	}
	
	.faq-list dt:after {
		top:20px;
		right:15px;
		width:20px;
		height:20px;
		background-image:url(/themes/kagawa-u_dpec/images/icon_plus.png);
		background-size:20px 20px;
	}
	
	.faq-list dd{
		display:none;
		font-size:15px;
		font-size:1.5rem;
		padding:0 20px 20px;
		color:#666;
		background-color:#ddf6fa;
	}
	
	/* --- index-list --- */
	
	ul.index-list{
	  margin:30px 0 0;
	}
	
	.index-list li{
	  float:none;
	  width:100%;
	  margin:0 0 20px;
	}
	
	.index-list li:hover{
	  opacity: 1;
	}
	
	/* --- table --- */
	
	table{
	  width:100%;
	}
	
	/* スクロール */
	.scroll-table{
	  overflow: auto;
	  white-space: nowrap;
	}
	.scroll-table::-webkit-scrollbar{
	  height: 5px;
	}
	.scroll-table::-webkit-scrollbar-track{
	  background: #F1F1F1;
	}
	.scroll-table::-webkit-scrollbar-thumb {
	  background: #BCBCBC;
	}
	
	/* 縦 */
	
	table.tbl-r02{
	  border:none;
	}
	
	table.tbl-r02 thead{  display:none;}

	table.tbl-r02 tr,
	table.tbl-r02 th,
	table.tbl-r02 td {
	  display: block;
	  width: 100%;
	}
	
	table.tbl-r02 tr:first-child {
	  border-top: 1px solid #18c1db  
	}
	
	table.tbl-r02 th,
	table.tbl-r02 td {
	  border-top: none;
	}
	
	table.tbl-r02 td{
	  text-align: left;
	}
	
	table.tbl-r02 td:before {
	  content: attr(data-label);
	  float: left;
	  font-weight: bold;
	  margin-right: 10px;
	}

	/* layout-frame */

	.content .layout-frame{
		margin-left:0;
	}

	.content .layout-3col{
		margin-left:0;
	}

	.content .layout-unit {
		float:none;
		display:block;
		margin-left:0;
	}

	.content .layout-3col .layout-unit {
		margin-left:0;
	}

	.grid-1 { width:auto; }
	.grid-2 { width:auto; }
	.grid-3 { width:auto; }
	.grid-4 { width:auto; }
	.grid-5 { width:auto; }
	.grid-6 { width:auto; }
	.grid-7 { width:auto; }
	.grid-8 { width:auto; }
	.grid-9 { width:auto; }
	.grid-10{ width:auto; }
	.grid-11{ width:auto; }
	
	a[href*="tel:"] {
		pointer-events:auto;
		text-decoration: underline;
	}
	
	iframe{ max-width: 100%; }
	
	.page-title h1{ display: table-cell; vertical-align: middle; line-height: 1.5em; width: 1000px; height: 180px; text-align: center;}
	
	.report-area_list ul li {
		margin:0 5% 50px 0;        
		width:47%;
	}
	.report-area_list ul li:nth-child(3n){ margin-right:5%; }
	.report-area_list ul li:nth-child(2n){ margin-right: 0; }
	
	.report-area_list ul li dt{ width: 100%; height: auto; }

	.pager-navigation ul li {
		margin-right: 1px;
		width: 40px;
	}

	.report-area_list .pager-navigation ul li:nth-child(2n) {
    margin-right: 1px;
}

	.report-area_list .pager-navigation ul li:nth-child(3n) {
    margin-right: 1px;
}

 }

