@charset "UTF-8";
/* CSS Document */

/*********************************************************************
*
* Copyright (c) CUBIC DESIGN INC.
*
* Url :http://www.cubicdesign.co.jp
*
* Built       :2016/03/01
* Last update :2018/12/05
* Made by     :Suga Yui
* Updated by  :Murata Hiroyuki
*
**********************************************************************/


/*************************************************************************************************************************
* reset
*************************************************************************************************************************/
html{ height:100%; overflow-y:scroll; }
body{ height:100%; margin:0; padding:0; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; -webkit-text-size-adjust:100%; }
img{ width:100%; max-width:100%; height:auto; border:0; font-size:0; line-height:0; vertical-align:bottom; }
form{ margin:0; padding:0; }
p{ margin:0; padding:0; }
a, a:hover{ text-decoration:none; outline:none; }
h1, h2, h3, h4, h5, h6{ margin:0; padding:0; font-size:0; line-height:0; }
ul, dl, dt, dd{ margin:0; padding:0; }
li, ol{ margin:0; padding:0; list-style:none; }
table{ border:0; border-collapse:collapse; border-spacing:0; }
caption, th{ text-align:left; }
.clear{ clear:both; margin:0; padding:0; font-size:0; line-height:0; }
sup{ font-size:60%; }
header, nav, article, aside, section, footer{ display:block; }
*{ box-sizing:border-box; }


/**************************************************************************************************************************/
body{ font-size:12px; color:#484A4C; line-height:1.7; }
a{ color:#484A4C; }


/* header
**********************************************************************/
header{ display:table; width:100%; height:70px; border-top:#0083a4 4px solid; border-bottom:#66B3C6 1px solid; z-index:10000; }
header h1{ display:table-cell; background:#009fc1; line-height:1.5; vertical-align:top; }
header h1 a{ display:block; height:65px; padding:9px 0 0 12px; color:#FFF; }
header h1 a img{ width:64px; }
header h1 a p{ margin:4px 0 0; font-size:12px; }
header ul{ display:table-cell; background:#009FC1; width:136px; overflow:hidden; }
header ul li{ width:68px; float:left; border-left:#66B3C6 1px solid; text-align:center; }
header ul li a{ display:block; height:65px; }
header ul li:nth-child(1) a{ padding:19px 0 0; }
header ul li:nth-child(1) img{ width:22px; }
header ul li:nth-child(2) a{ padding:14px 0 0; }
header ul li:nth-child(2) img{ width:36px; }


/* nav
**********************************************************************/
nav a{ color:#FFF; }
nav > div{ display:none; background:rgba(42,160,186,0.9); width:100%; height:auto; padding:70px 0 0; overflow:scroll; position:fixed; top:0; z-index:1000; }
nav div .innerMenu{ width:100%; padding:22px 14px 30px; }
nav div .innerMenu > li{ position:relative; }
nav div .innerMenu > li:nth-child(3){ margin:0 0 14px; }
nav div .innerMenu > li:before{ content:""; display:block; background:#FFF; width:18px; height:18px; position:absolute; top:9px; right:16px; border-radius:11px; }
nav div .innerMenu > li:after{ content:""; display:block; background:#FFF; width:4px; height:4px; position:absolute; top:15px; right:23px; border-top:#0095DD 2px solid; border-left:#0095DD 2px solid; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }
nav div .innerMenu > li > a{ display:block; background:#2382A3; width:100%; height:35px; padding:0 0 0 14px; font-size:19px; line-height:35px; }
nav div .innerMenu li > ul{ padding:16px 0  23px; }
nav div .innerMenu li ul > li { padding:0 0 0 34px; margin:0 0 16px; position:relative; font-size:14px; }
nav div .innerMenu li ul > li:last-child{ margin:0; }
nav div .innerMenu li ul li a{ display:block; width:100%; }
nav div .innerMenu li ul > li:after{ content:""; display:block; background:rgba(42,160,186,0); width:6px; height:6px; position:absolute; top:7px; left:16px; border-top:#FFF 1px solid; border-left:#FFF 1px solid; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }

nav .fixMenu{ background:#0081A2; width:100%; position:fixed; bottom:0; overflow:hidden; font-size:12px; border-top:#66B3C6 1px solid; z-index:100000; }
nav .fixMenu li{ width:27%; float:left; text-align:center; }
nav .fixMenu li a{ display:block; height:69px; padding:11px 0 0; }
nav .fixMenu li a img{ width:23px; }
nav .fixMenu li a p{ margin:11px 0 0; line-height:1; }
nav .fixMenu li:nth-child(2){ border-left:#66B3C6 1px solid; border-right:#66B3C6 1px solid; }
nav .fixMenu li:nth-child(3) a p{ margin:6px 0 0; }
nav .fixMenu li:nth-child(1) a img{ margin:0 0 0 6px; }
nav .fixMenu li:last-child{ background:#339CBE url(../img/hd_nav04.png) no-repeat center; background-size:40px 48px; width:19%; }
nav .fixMenu li.on{ background:#2C6585 url(../img/hd_nav05.png) no-repeat center; background-size:40px 48px; }
nav .fixMenu li:last-child a{ padding:14px 0 0; color:#1A6384; font-weight:bold; }

/* h2,h3
**********************************************************************/
h2,h3,h4,h5{ line-height:1.5; }
h2{ background:#009fc1; height:78px; padding:0 14px; color:#FFF; font-size:18px; line-height:78px; }
h2:before{ top:11px!important; }
h2:after{ top:23px!important; }
h3{ padding:0 0 0 49px;position:relative; font-size:21px; }
h3:before{ content:""; display:block; background:#2381A2; width:35px; height:9px; position:absolute; top:10px; left:0; }

/* pankuzu
**********************************************************************/
.pankuzu{ background:#e9eff2; height:60px; overflow:hidden; position:relative; font-size:11px; line-height:60px; }
.pankuzu li:nth-child(1){ background:#FFF url(../img/pankuzu.png) no-repeat center; background-size:20px 18px; width:41px; position:relative; z-index:2; }
.pankuzu li:nth-child(1) a{ display:block; width:41px; height:60px; }
.pankuzu li:nth-child(1):before{ content:""; display:block; width:0; height:0; position:absolute; top:0; right:-14px; border-left:14px solid #FFF; border-top:30px solid transparent; border-bottom:30px solid transparent}
.pankuzu li:nth-child(2){ margin:-60px 0 0; font-size:15px; text-align:center; }
.pankuzu li:nth-child(2) a{ display:block; width:100%; height:60px; }


/* couse Btn
**********************************************************************/
.itTit,
.buTit,
.gaTit,
.cgTit,
.deTit{ position:relative; font-size:18px; color:#FFF; font-weight:bold; line-height:1.4; }
.itTit span,
.buTit span,
.gaTit span,
.cgTit span,
.deTit span{ display:block; font-family:Arial, Helvetica, sans-serif; font-size:11px; font-weight:normal; }
.itTit:before,
.buTit:before,
.gaTit:before,
.cgTit:before,
.deTit:before{ content:""; display:block; width:51px; height:51px; position:absolute; border-radius:4px; top:0; left:14px; }
.itTit:after,
.buTit:after,
.gaTit:after,
.cgTit:after,
.deTit:after{ content:""; display:block; width:30px; height:29px; position:absolute; top:10px; left:24px; }

.cgTit{ line-height:1.2; }
.cgTit span{ line-height:1.5; }
.itTit:before{ background:#167EB1; }
.buTit:before{ background:#7C5788; }
.gaTit:before{ background:#B84733; }
.cgTit:before{ background:#BD7117; top:10px; left:14px; }
.deTit:before{ background:#BA6276; }
.itTit:after{ background:url(../img/icon_it.png) no-repeat; background-size:contain; }
.buTit:after{ background:url(../img/icon_business.png) no-repeat; background-size:contain; }
.gaTit:after{ background:url(../img/icon_game.png) no-repeat; background-size:contain; }
.cgTit:after{ background:url(../img/icon_cg.png) no-repeat; background-size:contain; top:20px; left:24px; }
.deTit:after{ background:url(../img/icon_design.png) no-repeat; background-size:contain; }

/* btn
**********************************************************************/
.btn{ display:block; background:#FFF; height:80px; position:relative; font-size:18px; font-weight:bold; line-height:80px; text-align:center; border-radius:8px; -moz-box-shadow:0px 1px 4px 0.54px rgba(102, 105, 109, 0.33); -webkit-box-shadow:0px 1px 4px 0.54px rgba(102, 105, 109, 0.33); box-shadow:0px 1px 4px 0.54px rgba(102, 105, 109, 0.33); }
.btn span{ margin:0 0 0 -2rem; }
.btn:before{ content:""; display:block; background:#0081A2; width:20px; height:20px; position:absolute; top:31px; right:24px; border-radius:10px; }
.btn:after{ content:""; display:block; background:#0081A2; width:5px; height:5px; position:absolute; top:38px; right:32px; border-top:#FFF 1px solid; border-left:#FFF 1px solid; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }

.btn02{ display:block; background:#009FC1; height:57px; position:relative; font-size:15px; font-weight:bold; color:#FFF; line-height:59px; text-align:center; border-radius:8px; -moz-box-shadow:0px 6px #0083A4; -webkit-box-shadow:0px 6px #0083A4; box-shadow:0px 6px #0083A4; }
.btn02 span{ margin:0; }
.btn02:before{ content:""; display:block; background:#FFF; width:20px; height:20px; position:absolute; top:19px; right:24px; border-radius:11px; }
.btn02:after{ content:""; display:block; width:5px; height:5px; position:absolute; top:25px; right:32px; border-top:#009FC1 2px solid; border-left:#009FC1 2px solid; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }

.btnBox{ background:#e9eff2; padding:30px 14px ; }

/* grow
**********************************************************************/
.grow{ overflow:hidden; position:relative; color:#FFF; }
.grow:before{ content:""; display:block; background:#FFF; width:22px; height:22px; position:absolute; top:30px; right:13px; border-radius:11px; }
.grow:after{ content:""; display:block; background:#FFF; width:6px; height:6px; position:absolute; top:37px; right:21px; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }
.grow dt,
.grow dd{ height:80px; overflow:hidden; float:left; position:relative; }
.grow dt{ width:80px; padding:21px 0 0; font-family:Arial, Helvetica, sans-serif; font-size:9px; line-height:1.2; text-align:center; }
.grow dt span{ display:block; font-size:24px; }
.grow dd{ padding:20px 0 0 38px; line-height:1.4; }
.grow dd span{ display:block; font-size:18px; }
.grow dt:before,
.grow dd:before{ content:""; display:block; position:absolute; -webkit-transform:rotate(135deg);-moz-transform:rotate(135deg); transform:rotate(135deg); }
.grow dt:before{ width:50px; height:50px; top:-30px; right:-25px; }
.grow dd:before{ width:70px; height:70px; bottom:-35px; left:-35px; }

#up01{ background:#834F94; }
#up02{ background:#D85B78; }
#up03{ background:#E47701; }
#up01:after{ border-top:#834F94 2px solid; border-left:#834F94 2px solid; }
#up02:after{ border-top:#D85B78 2px solid; border-left:#D85B78 2px solid; }
#up03:after{ border-top:#E47701 2px solid; border-left:#E47701 2px solid; }
#up01 dt{ background:#925DA3; }
#up02 dt{ background:#EC6D88; }
#up03 dt{ background:#F08200; }
#up01 dt:before{ background:#834F94; }
#up02 dt:before{ background:#D85B78; }
#up03 dt:before{ background:#E47701; }
#up01 dd:before{ background:#925DA3; }
#up02 dd:before{ background:#EC6D88; }
#up03 dd:before{ background:#F08200; }

/* br
**********************************************************************/
@media print, screen and (max-width:374px){ br.spOff{ display:none; } }
@media print, screen and (max-width:390px){ br.spOn{ display:block; } }
@media print, screen and (min-width:390px){ br.spOn{ display:none; } }

/* detailTit
**********************************************************************/
.detailTit{ height:50px; overflow:hidden; color:#FFF; }
.detailTit dt{ width:77px; height:50px; padding:12px 0 0; float:left; font-size:15px; text-align:center; line-height:1.4; }
.detailTit dt span{ display:block; font-size:10px; line-height:1; }
.detailTit dd{ padding:0 0 0 14px; float:left; font-size:18px; line-height:50px; }

/* topiclist
**********************************************************************/
.topiclist{ padding:0 14px; }
.topiclist li{ padding:16px 14px 0 14px; position:relative; }
.topiclist li.topicsImportant{ background: #FBFFA3;}
.topiclist li:after{ content:""; display:block; background:rgba(0,0,0,0); width:8px; height:8px; position:absolute; top:calc(50% - 8px); right:15px; border-top:#A3A4A5 2px solid; border-left:#A3A4A5 2px solid; -webkit-transform:rotate(135deg) translateY(-50%);-moz-transform:rotate(135deg) translateY(-50%); transform:rotate(135deg) translateY(-50%); }
.topiclist li a dl dt{ font-family:Arial, Helvetica, sans-serif; font-size:16px; color:#999; }
.topiclist li a dl dt span{ display:inline-block; width:90px; height:20px; margin:3px 0 0 10px; font-size:11px; color:#FFF; line-height:20px; text-align:center; vertical-align:top; }
.topiclist li a dl dd{ margin:4px 0 0; padding:0 40px 7px 0; font-size:14px; border-bottom:#EAEAEA 1px solid; }

span.category0{ background:#d1c632; }
span.category1{ background:#cf4f9e; }
span.category2{ background:#5caf64; }
span.category3{ background:#ff0000; }


/* .pager
**********************************************************************/
.pager{ display:table; width:200px; }
.pager:first-of-type{ margin:30px auto 0; }
.pager:last-of-type{ margin:0 auto 30px; }

.pager > li{ display:table-cell; }

.pager li a{ display:block; width:34px; height:34px; border:1px solid #eee; font-size:14px; color:#009fc1; line-height:32px; text-align:center; }
.pager li.current a{ border-color:#009fc1; color:#009fc1; }

.pager li.prev,
.pager li.next{ width:34px; }
.pager li.prev a,
.pager li.next a{ position:relative; overflow:hidden; text-indent:100%; white-space:nowrap; }
.pager li.prev a:before,
.pager li.next a:before{ content:""; width:8px; height:8px; border-top:1px solid #009fc1; border-left:1px solid #009fc1; position:absolute; top:50%; left:50%; }
.pager li.prev a:before{ transform:rotate(-45deg); margin:-4px 0 0 -2px }
.pager li.next a:before{ transform:rotate(135deg); margin:-4px 0 0 -6px }

.pager li.paging{ text-align:center; }
.pager li.paging li{ display:inline-block; }


/* companylist
**********************************************************************/
.companylist{ background:#FFF; padding:20px 17px 17px; }
.companylist ul li{ display:inline; }
.companylist ul li:nth-child(n+2){ margin:2px 0 0; }
.companylist p{ margin:20px 0 0; font-size:10px; text-align:right; }


/* footer
**********************************************************************/
footer{ border-top:#CCC 1px solid; padding:0 0 70px; }
footer > a{ display:block; height:56px; font-size:16px; font-weight:bold; line-height:56px; text-align:center; }
footer a span{ display:inline-block; position:relative; }
footer a span:before{ content:""; display:block; background:#B6B7B7; width:18px; height:18px; position:absolute; top:18px; right:-33px; border-radius:9px; }
footer a span:after{ content:""; display:block; background:#B6B7B7; width:4px; height:4px; position:absolute; top:25px; right:-27px; border-top:#FFF 2px solid; border-left:#FFF 2px solid; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); transform:rotate(45deg); }

footer .ftBox{ background:#009FC1; padding:15px 14px 19px; border-top:#0084A5 10px solid; }
footer .ftBox > dl{ color:#FFF; text-align:center; }
footer .ftBox > dl dt{ margin:0 0 2px; font-size:16px; font-weight:bold; }
footer .ftBox > dl dd{ font-size:13px; }
footer .ftBox ul.tel{ margin:15px 0 19px; }
footer .ftBox ul.tel > li{ height:80px; border-radius:6px; }
footer .ftBox ul.tel > li a{ display:block; padding:16px 0 0 80px; }
footer .ftBox ul.tel li:nth-child(1){ background:#FFF url(../img/icon_tel02.png) no-repeat 32px center; background-size:21px 29px; margin:0 0 14px; }
footer .ftBox ul.tel li:nth-child(2){ background:#FFF url(../img/icon_freetel.png) no-repeat 21px center; background-size:49px 28px; }
footer .ftBox ul.tel li a > dl{ position:relative; }
footer .ftBox ul.tel li a > dl:before{ content:""; display:block; background:#0084A5; width:20px; height:20px; position:absolute; top:14px; right:24px; border-radius:11px; }
footer .ftBox ul.tel li a > dl:after{ content:""; display:block; background:#0084A5; width:5px; height:5px; position:absolute; top:20px; right:32px; border-top:#FFF 2px solid; border-left:#FFF 2px solid; -webkit-transform:rotate(135deg); -moz-transform:rotate(135deg); transform:rotate(135deg); }
footer .ftBox ul.tel li a > dl dd{ font-family:Arial, Helvetica, sans-serif; font-size:21px; line-height:1.2; }

footer .ftBox ul.ftMenu{ max-width:320px; margin:0 auto; padding:0 20px; overflow:hidden; color:#FFF; font-size:12px; }
footer .ftBox ul.ftMenu li{ position:relative }
footer .ftBox ul.ftMenu > li:nth-child(1){ float:left; }
footer .ftBox ul.ftMenu > li:nth-child(2){ float:right; }
footer .ftBox ul.ftMenu > li a{ padding:0 0 0 15px; color:#FFF; }
footer .ftBox ul.ftMenu > li a:before{ content:""; display:block; background:#009FC1; width:5px; height:5px; position:absolute; top:6px; left:0; border-top:#FFF 2px solid; border-left:#FFF 2px solid; -webkit-transform:rotate(135deg); -moz-transform:rotate(135deg); transform:rotate(135deg); }
footer p{ background:#0084A5; height:60px; color:#FFF; line-height:60px; text-align:center; }


/*************************************************************************************************************************
* .enrollment,foreign-students
*************************************************************************************************************************/
.description h3{ background:#0084A5; height:50px; padding:0 0 0 14px; margin:0 0 25px; font-size:16px; font-weight:normal; color:#FFF; line-height:50px; }
.description h3:before{ display:none; }
.description h4{ background:#7FBE25; padding:8px 10px; margin:0 0 15px; font-size:14px; font-weight:normal; color:#FFF; }
.description .attention{ padding:0 0 0 1rem; position:relative; }
.description .attention:before{ content:"※"; position:absolute; top:0;left:0; }
.description .attentionBox{ background:#F4F4F4; padding:10px 9px; }
.description .attentionBox li,
.description .attentionBox p{ padding:0 0 0 1rem; position:relative; }
.description .attentionBox li:before,
.description .attentionBox p:before{ content:"※"; position:absolute; top:0; left:0; }
.description .attentionBox li.closed,
.description .attentionBox p.closed,
.description .attentionBox li.closed:before,
.description .attentionBox p.closed:before{ font-weight: bold; color: #c30000;}


/* .detail
**********************************************************************/
.detail > dt{ padding:0 0 5px 10px; position:relative; font-size:14px; border-bottom:#DADBDB 1px solid; }
.detail > dt:before{ content:""; display:block; background:#0084A5; width:3px; height:14px; position:absolute; top:4px; left:0; }
.detail > dd{ margin:8px 0 18px; }
.detail dd a{ color:#0084A5; text-decoration:underline; }

/* .dayBox
**********************************************************************/
.dayBox li{ padding:14px 23px 12px; margin:0 0 14px; text-align:center; border:#E0E0E0 1px solid; border-radius:8px; }
.dayBox li:last-child{ margin:0; }
.dayBox li h5{ background:#0084A5; height:20px; margin:0 0 14px; font-size:14px; color:#FFF; line-height:20px; }
.dayBox li.closed h5{ background: #ccc;}
.dayBox li dl{ margin:0 auto; }
.dayBox li dl dt{ background:#EFEFEF; height:20px; line-height:20px; }
.dayBox li dl dd{ margin:6px 0 0; font-weight:bold; }
.dayBox li dl dd:first-of-type{ margin:8px 0; }
.dayBox li.closed p,
.dayBox li.closed dl dt,
.dayBox li.closed dl dd{ color: #ccc;}

/* .specBox
**********************************************************************/
.specBox li{ padding:14px 23px 12px; margin:0 0 14px; text-align:center; border:#E0E0E0 1px solid; border-radius:8px; }
.specBox li:last-child{ margin:0; }
.specBox li h5{ background:#0084A5; height:20px; margin:0 0 14px; font-size:14px; color:#FFF; line-height:20px; }
.specBox li.closed h5{ background: #ccc;}
.specBox li dl{ margin:0 auto; }
.specBox li dl dt{ background:#EFEFEF; height:20px; line-height:20px; }
.specBox li dl dd{ margin:8px 0; font-weight:bold; }
.specBox li dl dd:last-of-type{ margin:8px 0 0 0; }
.specBox li.closed p,
.specBox li.closed dl dt,
.specBox li.closed dl dd{ color: #ccc;}

/* .grayBox
**********************************************************************/
.grayBox{ background:#F4F4F4; }
.grayBox dt{ background:#888888; height:27px; padding:0 0 0 10px; color:#FFF; line-height:27px; }
.grayBox dd { padding:10px; }
.grayBox dd ul li{ padding:0 0 0 0.8rem; position:relative; font-size:11px; }
.grayBox dd ul li:last-child{ margin:0; }
.grayBox dd ul li:before{ content:"・"; position:absolute; top:0; left:0; }

/* .subject
**********************************************************************/
.subject{ background:#E9EFF2; padding:25px 0; }
.subject > ul{ padding:0 14px; }
.subject > ul > li{ margin:0 0 25px; }
.subject > ul > li:last-child{ margin:0; }
.subject ul li h5{ height:35px; margin:0 0 15px; padding:0 0 0 35px; font-size:14px; line-height:35px; }
.subject ul li h5:before{ width:20px; height:20px; top:8px; left:7px; }
.subject ul li h5:after{ width:12px; top:12px; left:11px; }
.subject ul li dl dt{ height:22px; padding:0 0 0 58px; position:relative; color:#FFF; line-height:22px; }
.subject ul li dl dt .no{ display:block; width:50px; height:22px; padding: 0; position:absolute; top:0; left:0; line-height:22px; text-align:center; }
.subject ul li dl dt.row2{ height:43px; padding:7px 0 0 58px; line-height:1.4; }
.subject ul li dl dt.row2 .no{ height:43px; line-height:43px; }
.subject ul li dl dt.row2 .txt{ display:block; font-size:10px; }
.subject ul li dl dd{ background:#FFF; padding:0 10px 8px;margin:0 0 10px; }
.subject ul li dl dd:last-child{ margin:0; }
.subject ul li dl dd div{ padding:10px 0; overflow:hidden; border-bottom:#E5E5E5 1px solid; }
.subject ul li dl dd div > p{ background:#F90600; padding:1px 5px; float:left; font-size:10px; color:#FFF; text-align:center; }
.subject ul li dl dd div > p:nth-of-type(n+2){ margin:0 0 0 5px; }
.subject ul li dl dd ul{ padding:2px 0 0; }
.subject ul li dl dd ul li{ padding:6px 0 6px; font-size:11px; }
.subject ul li dl dd ul li:nth-last-child(n+2){ border-bottom:#E5E5E5 1px dotted; }
.subject ul li dl dd ul li:last-child{ padding:8px 0 0; }
.subject ul li dl dd > p{ margin:8px 0 0; }
.subject > p{ background:#E9EFF2; height:50px; margin:25px 14px 0; font-size:16px; line-height:50px; text-align:center; border:#CBCBCB 1px solid; }

.subject ul li:nth-child(1) dl dt{ background:#0095DD; }
.subject ul li:nth-child(2) dl dt{ background:#925DA3; }
.subject ul li:nth-child(3) dl dt{ background:#E94527; }
.subject ul li:nth-child(4) dl dt{ background:#F08200; }
.subject ul li:nth-child(5) dl dt{ background:#EC6D88; }
.subject ul li:nth-child(1) dl dt .no{ background:#0063A7; }
.subject ul li:nth-child(2) dl dt .no{ background:#784689; }
.subject ul li:nth-child(3) dl dt .no{ background:#C6230D; }
.subject ul li:nth-child(4) dl dt .no{ background:#C96100; }
.subject ul li:nth-child(5) dl dt .no{ background:#BC4161; }
.subject ul li:nth-child(1) h5{ background:#0095DD; }
.subject ul li:nth-child(2) h5{ background:#925DA3; }
.subject ul li:nth-child(3) h5{ background:#E94527; }
.subject ul li:nth-child(4) h5{ background:#F08200; }
.subject ul li:nth-child(5) h5{ background:#EC6D88; }


/* .innerlist
**********************************************************************/
.innerlist li{ padding:0 0 0 30px; margin:0 0 15px; position:relative; line-height:1.5; }
.innerlist span{ display:block; background:#006586; width:22px; height:22px; position:absolute; top:-1px; left:0; color:#FFF; line-height:22px; text-align:center; }


/* .table( costBox,totalBox)
**********************************************************************/
.costBox{ width:100%; margin:0 0 25px; }
.costBox:nth-of-type(1){ margin:0 0 15px; }
.costBox tr{ height:44px; border-bottom:#CCCCCC 1px solid; }
.costBox tr:last-of-type{ border-bottom:none; }
.costBox tr th{ font-weight:normal; color:#FFF; }
.costBox tr th,
.costBox tr td{ width:50%; }
.costBox thead tr th:nth-of-type(1),
.costBox tbody tr td:nth-of-type(1){ padding:0 0 0 13px; }
.costBox thead tr th:nth-of-type(2),
.costBox tbody tr td:nth-of-type(2){text-align:center; }
.costBox thead tr th:nth-of-type(1){ background:#004A69; border-left:#1D476B 1px solid; border-right:#1D476B 1px solid; }
.costBox thead tr th:nth-of-type(2){ background:#006586; line-height:1.5; border-right:#1B6586 1px solid; }
.costBox thead tr th span{ display:block; font-size:10px; }
.costBox tbody{ border-left:#CCC 1px solid; border-right:#CCC 1px solid; border-bottom:#CCC 1px solid; }
.costBox tbody tr td:nth-of-type(1){ background:#FAFAFA; border-right:#CCC 1px solid; }
.costBox tbody tr.total td:nth-of-type(1){ background:#EFEDED; }
.costBox tbody tr.total td:nth-of-type(2){ background:#F3F3F3; }

.totalBox{ width:100%; margin:0 0 25px; }
.totalBox tbody{ border:#F18D00 1px solid; }
.totalBox tbody tr{ height:44px; }
.totalBox tbody tr th,
.totalBox tbody tr td{ width:50%; }
.totalBox tbody tr th{ background:#F18D00; padding:0 0 0 13px; font-weight:normal; color:#FFF; border-right:#F18D00 1px solid; }
.totalBox tbody tr td{ color:#F18D00; text-align:center; }



/*************************************************************************************************************************
* form
*************************************************************************************************************************/


/* common parts
**********************************************************************/

/* step */
.step{ overflow:hidden; }
.step li{ height:32px; padding:0 0 0 22px; float:left; position:relative; font-size:12px; color:#FFF; line-height:32px; text-align:center; }
.step li{ width:33.33%; }

.step li:nth-child(1){ background:#00b0c3; padding:0; }
.step li:nth-child(2){ background:#afafaf; }
.step li:nth-child(3){ background:#9e9e9e; }
.step li:nth-child(4){ background:#939393; }

.step li:nth-child(1):before,
.step li:nth-child(2):before,
.step li:nth-child(3):before,
.step li:nth-child(4):before{ content:""; width:0; height:0; position:absolute; top:0; right:-38px; border:16px solid transparent; border-left:22px solid transparent; z-index:4; }
.step li:nth-child(1):before{ border-left-color:#00b0c3; }
.step li:nth-child(2):before{ border-left-color:#afafaf; }
.step li:nth-child(3):before{ border-left-color:#9e9e9e; }
.step li:nth-child(4):before{ border-left-color:#939393; }

.step li:nth-child(2).on{ background:#00a1c4; }
.step li:nth-child(3).on{ background:#0091c5; }
.step li:nth-child(4).on{ background:#007dc5; }
.step li:nth-child(2).on:before{ border-left-color:#00a1c4; }
.step li:nth-child(3).on:before{ border-left-color:#0091c5; }
.step li:nth-child(4).on:before{ border-left-color:#007dc5; }


/* text */
.formTxt{ padding:20px 14px; }
.formTxt p{ font-weight:bold; line-height:1.5; }
.formTxt p:nth-child(2){ margin:8px 0 0; font-size:11px; font-weight:normal; }
.formTxt p:nth-child(2) .required{ margin:0 3px 0 0; }


/* button */
form[name=contactForm],
.thanks{ padding:20px 14px; }

.formBtnBox{ background:#e9eff2; padding:20px 14px 26px 14px; }

.formBtnBox li:nth-child(2) a{ background:#9E9E9E; margin:15px 0 0; color:#FFF; -moz-box-shadow:0px 8px #858585; -webkit-box-shadow:0px 8px #858585; box-shadow:0px 8px #858585; }
.formBtnBox li:nth-child(2) a:before{ background:#FFF; }
.formBtnBox li:nth-child(2) a:after{ border-top:#858585 2px solid; border-left:#858585 2px solid; }



/* input
**********************************************************************/

/* icon */
.required,
.optional{ display:inline-block; width:34px; margin:0 0 0 5px; height:16px; font-size:10px; color:#FFF; line-height:16px; text-align:center; }
.required{ background:#F90600; }
.optional{ background:#21B8C5; }


/* form layout */
form[name=contactForm] .input_detail dt{ clear:both; }
form[name=contactForm] .input_detail dt:before{ content:"■"; margin:0 3px 0 0; color:#7fbe25; }
form[name=contactForm] .input_detail dd{ margin:10px 0 28px; position:relative; }
form[name=contactForm] .input_detail dd:last-of-type{ margin:4px 0 0; }
form[name=contactForm] .input_detail dd.name0101,
form[name=contactForm] .input_detail dd.name0201{ width:48%; float:left; }
form[name=contactForm] .input_detail dd.name0102,
form[name=contactForm] .input_detail dd.name0202{ width:48%; float:right; }
form[name=contactForm] .input_detail dd.moreInput{ margin:-18px 0 28px; }
form[name=contactForm] .input_detail dd > label,
form[name=contactForm] .input_detail dd div label{ position:absolute; top:15px; left:15px; color:#9E9E9E; }
form[name=contactForm] .input_detail dd:last-of-type .error{ position:static; line-height:1; }



form[name=contactForm] input[type=text],
form[name=contactForm] input[type=tel],
form[name=contactForm] input[type=email],
form[name=contactForm] select{ height:48px; padding:0 0 0 15px; font-size:14px; border:none; }

form[name=contactForm] input[type=text],
form[name=contactForm] input[type=tel],
form[name=contactForm] input[type=email]{ width:100%; border:#CFD2D3 1px solid; border-radius:6px; }

form[name=contactForm] .error{ display:block; margin:5px 0 0; font-size:12px; font-weight:bold; color:#F30C00; line-height:1; }


/* address */
form[name=contactForm] .input_detail dd > div{ overflow:hidden; margin:0 0 18px; }
form[name=contactForm] .input_detail dd > div input{ width:48%!important; float:left; }


/* year */
form[name=contactForm] .year{ overflow:hidden; margin:18px 0 0; }
form[name=contactForm] .year div:nth-child(1){ float:left; }


/* radio */
form[name=contactForm] input[type=radio]{ display:none; }
form[name=contactForm] .radio{ height:50px; overflow:hidden; }
form[name=contactForm] .radio label{ display:block; width:50%; float:left; position:static !important; cursor:pointer; }
form[name=contactForm] .radio label:before{ display:block; background:#CBCBCB; height:50px; font-size:14px; color:#FFF; line-height:50px; text-align:center; }
form[name=contactForm] .radio input[type=radio]:checked +label:before{ background:#38AFF2; }
form[name=contactForm] .radio label:nth-of-type(1){ border-right:1px solid #FFF; }


/* select */
form[name=contactForm] select{ width:130%; background:none; color:#484A4C; cursor:pointer; }
form[name=contactForm] .select01,
form[name=contactForm] .select02{ background:url(../img/btn_select.png) no-repeat right top; background-size:43px 48px; height:48px; border:#CFD2D3 1px solid; border-radius:6px; overflow:hidden; }
form[name=contactForm] .select01{ width:48%; float:right; }
form[name=contactForm] .select02{ width:100%; }


/* checkbox */
form[name=contactForm] .checkbox input{display:none; }
form[name=contactForm] .checkbox input[type=checkbox] +label:before{ content:""; display:block; background:#FFF; width:14px; height:14px; position:absolute; top:16px; left:15px; border:#CFD2D3 1px solid; border-radius:4px; }
form[name=contactForm] .checkbox input[type=checkbox]:checked +label:after{ content:""; display:block; width:7px; height:13px; position:absolute; top:12px; left:19px; border-right:3px solid #009fc1; border-bottom:3px solid #009fc1; -webkit-transform:rotate(45deg); transform:rotate(45deg); }

form[name=contactForm] .checkbox label{ display:block; padding:0 0 0 40px; position:relative; }
form[name=contactForm] .radio label.male:before{ content:"男性"; }
form[name=contactForm] .radio label.female:before{ content:"女性"; }

form[name=contactForm] .checkbox ul li{ height:48px; font-size:12px; line-height:50px; }
form[name=contactForm] .checkbox ul li:nth-child(even){ background:#E1E8EA; }
form[name=contactForm] .checkbox ul li label{ color:#484A4C; }


/* confirm
**********************************************************************/
#confirm p.text{ padding:20px 14px 0; height:auto; font-size:12px; line-height:1.7; }
#confirm .result dt{ background:#7fbe25; width:100%; padding:5px 8px; font-size:14px; line-height:1; color:#FFF; }
#confirm .result dd{ min-height:1em; margin:10px 0 15px; line-height:1.5; }
#confirm .result dd:last-child{ margin:15px 0 0; }
#confirm .result dd span{ display:block; font-size:10px; }


/* thanks
**********************************************************************/
.thanks p{ margin:0 0 1rem; font-size:12px; }
.thanks p:last-child{ margin:0; }

#thanks .btnBox a{ background:#FFF; color:#484A4C; -moz-box-shadow:0px 8px #D3DADD; -webkit-box-shadow:0px 8px #D3DADD; box-shadow:0px 8px #D3DADD; }
#thanks .btnBox a:before,
#thanks .submit a:after{ display:none; }



/* hide analytics/retargeing image
**********************************************************************/
img[width="1"]{display:none}
