@charset "utf-8";

/*--------------------------------------------------------------------------------------------------

   second

--------------------------------------------------------------------------------------------------*/
.sp {
  display:none!important;
}

.list-menu-sp {
  display:none;
}

@media all and (max-width: 768px) {

  .list-menu-sp {
    display:none;
  }
  
  .fl-left,
  .fl-right {
    float:none;
  }
  
  .pc {
    display:none;
  }
  
  .sp {
    display:block!important;
  }
  
  
/*------------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------------*/
  .container {
    width:100%;
  }
  
  header {
	width:100%;
	padding:12px 0 0 0;
	
  }
  
  header .logo img {
	width:260px;
	margin-top:5px;
  }
  
  header .logo {
    margin-top: 0px;
    margin-right: 0px;
    display: inline-block;
  }
  
  header .menusp {
	display: inline-block !important;
    float: right;
  }
  
  header .header-info {
    padding:0px 5px 10px 5px;
  }
  
  nav {
    position:absolute;
    top:57px;/*maorg 77px*/
    z-index:102;
  }
  
   nav ul {
    width:100%;
  }
  
  nav li {
    display: block;
    width: 100%;
    padding: 15px 10px;
	background: #FAECDA;
    
    border-bottom: 1px solid #fff;
    text-indent: 0;
    text-align: left;
  }
  
  nav li a {
    height: auto;
    width: 100%;
    background: none !important;
    text-indent: 0;
    color: #333;
  }

/*--------------------------------------------------------------------------------------------
  page
--------------------------------------------------------------------------------------------*/
  #index .frame1 .container {
	padding:0 10px;
  }
  
  #index .frame1 {
    margin: 15px 0 20px 0;
  }
  
  .new {
    margin-top:0px;
  }
  
  .new li span:nth-child(2) {
    margin: 0 0px 0 5px;
  }
  
  #index .frame1 .title .fl-right {
    float:right;
  }
  
  .new li a {
    display: block;
    padding-top: 5px;
  }
  
  #index .frame2 {
    padding: 25px 0 20px 0;
  }
  
  #index .frame2 .info {
    margin-bottom: 0px;
  }
  
  #index .frame2 .info a {
    margin: 0 0 20px 0;
  }
  
  #index .frame2 .al-right {
    text-align:center;
  }
  
  #index .frame3 .container {
    padding: 35px 0px 15px 0px;
    text-align: center;
  }
  
  #index .frame3 a {
    float: none;
    display:block;
    margin: 0px auto 25px auto;
  }
  
  #index .new li a {
    font-size: 12px;
  }
  
  #index .new li span {
    font-size:11px;
  }
  
  #page h1 {
	font-size:20px;
  }
  
  #page .container {
	padding:0 8px;
  }
  
  #page .new {
    margin: 7px 12px 0 12px;
  }
  
  #page .new li img {
    margin: 0 0px 0 5px;
  }
  
  .news .new li span {
    width: 100%;
    display: block;
    padding-left: 5px;
    padding-bottom: 5px;
  }
  
  .news .new li img {
    margin:0!important;
  }
  
  .news .new li a,
  .public .new li a  {
    display:inline-block;
    padding-top:0;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 55%;
    white-space: nowrap;
    line-height:12px;
    font-size:14px;
    
  }
  
  .public .new li span {
    font-size:14px;
  }
  
  #page .link-page a.fl-left {
    float:left;
  }
  
  #page .link-page a.fl-left,
  #page .link-page a.fl-right {
    width:45%;
    margin-bottom:17px;
    font-size:12px;
    text-align:left;
  }
  
  #page .link-page a.fl-right {
    float:right;
  }
  
  .topics-detail .link-page .fl-left {
    float:none!important;
  }
  
  /*#page .link-page .al-center {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
  }*/
  
  .news .link-page {
    margin: 15px 0 40px 20px;
  }
  
  #page .sub-title {
    margin: 15px 0 10px 0;
  }
  
  .banner .container {
    padding: 0px!important;
  }
  
  .news-detail .content {
    padding:0!important;
  }
  
  .news-detail h1 {
    position: initial!important;
  }
  
  .news-detail .line-h1 {
    top: 51px;
    left: 7px;
  }
  
  .news-detail .info-detail .fl-right {
    width: 100%;
  }
  
  #page .info-detail {
    margin-top: 10px;
    border: 3px solid #FFF8DF;
      padding: 15px 7px 15px 7px;
    border-radius: 3px;
    position:relative;
  }
  
  #page .info-detail .date {
    position: absolute;
    top: 63px;
    z-index: 1;
    right: 8px;
    line-height:1.2;
  }
  
  #page .info-detail .text-right {
    margin-bottom: 15px;
    margin-top: 30px;
  }
  
  #page .info-detail .fl-left img {
    width:100%;
  }
  
  #page .info-detail .fl-right p {
    margin-bottom: 0px;
  }
  
  .service-detail .frame1 .container {
    padding: 15px 8px 40px 8px!important;
  }
  
  .service-detail .frame1 .container .fl-left {
    margin-bottom:25px;
    text-align:center;
  }
  
  .service-detail .frame1 .fl-right {
    width: 100%;
  }
  
  .service-detail .new {
    margin: 5px 8px 0 8px !important;
  }
  
  .service-detail .new li {
    padding: 10px 10px;
  }
  
  .service-detail .frame2 h1 {
    margin: 24px 0px 0 4px;
  }
  
  .service-detail .link-page {
    margin: 20px 0 5px 0;
  }
  
  .service-detail .link-page a.fl-left { 
    margin-left: 20px;
    width:auto;
  }
  
  .service-detail .link-page a.fl-right { 
    margin-right: 20px;
    width:auto!important;
    text-align:right!important;
  }
  
  .service-detail .table-service-detail {
    margin: 22px 0px 55px 0px;
    width: 100%;
  }
  
  .service-detail .table-service-detail td.title {
    width:100%;
    border-right:none;
  }
  
  .service-detail .table-service-detail tr,
  .service-detail .table-service-detail tr:last-child {
    border:none;
  }
  
  .service-detail .table-service-detail td {
    width: 100%;
    float: left;
    border:none!important;
    font-size:13px;
  }
  
  .service-detail .frame2 .container h1 {
    margin:0 8px;
    padding-top:20px!important;
  }
  
  .service-detail .frame2 .container {
    padding:0!important;
  }
  
  .service-detail .frame2 .box3 .info {
    width: 100%;
    margin: 25px 0px 15px 0px;
    background: url(../../image/service/bg-content-box3-frame2-service-detail.png) no-repeat;
    background-size: 100% 313px;
  }
  
  .service-detail .frame2 .box3 .info p {
    height: 45px;
    margin: 0px 0px 22px 5px;
    font-size:12px;
    letter-spacing: 0.1px;
  }
  
  .service-detail .frame2 .box3 .al-right {
    margin-right: 5px;
  }
  
  .service-detail .table2-service-detail {
    margin: 25px 15px 25px 15px;
  }
  
  .service-detail .table2-service-detail td {
    width: 126px;
    padding: 5px;
    font-size: 10px;
  }
  
  .service-detail .frame2 .box5 ul {
    margin-top: 20px;
    margin-left: 10px;
  }
  
  .service-detail .frame2 .box5 ul li {
    margin: 0 2px 10px 2px;
  }
  
  .chiiki .frame2 .box3 .info {
    background: url(../../image/service/bg-content-box3-frame2-service-detail-chiikisp.png) no-repeat;
    background-size: 100% 330px;
  }
  
  .opal .frame2 .box3 .info {
    background: url(../../image/service/bg-content-box3-frame2-service-detail-opalsp.png) no-repeat;
    background-size: 100% 384px;
  }
  
  .kyotaki .frame2 .box3 .info {
    background: url(../../image/service/bg-content-box3-frame2-service-detail-kyotakusp.png) no-repeat;
    background-size: 100% 410px;
  }
  
  .hinagiku .frame2 .box3 .info {
    background: url(../../image/service/bg-content-box3-frame2-service-detail-hinagikusp.png) no-repeat;
    background-size: 100% 451px;
  }
  
  .chiiki .frame2 .box3 .info p:first-child,
  .kyotaki .frame2 .box3 .info p:first-child,
  .kyotaki .frame2 .box3 .info p:nth-child(4)  {
    height:58px;
  }
  
  .opal .frame2 .box3 .info p:first-child {
    height:58px;
  }
  
  .opal .frame2 .box3 .info p:nth-child(2) {
    height:91px;
    margin-bottom:27px;
  }
  
  .opal .frame2 .box3 .info p {
    margin: 0px 0px 24px 5px;
  }
  
  .service-detail .frame2 .box6 .info .frame2 .box6 {
    padding: 1px 0 25px 0;
  }
  
  .service-detail .frame2 .box6 .info {
    padding-top: 30px;
    padding-left: 8px;
    width: 289px;
  }
  
  .service-detail .frame2 .box6 a:last-child .info {
    padding-top: 10px;
  }
  
  .service-detail .frame2 .box7 {
    padding-bottom: 20px;
  }
  
  .service-detail .frame2 .box7 .info {
    width: 100%;
    margin: 20px 0 0px 0px;
    padding: 5px;
    font-size:13px;
  }
  
  .public .frame1 {
    margin-right: 0px;
    margin-top: 10px;
    margin-bottom: 25px;
    padding: 0;
  }
  
  .public .frame1 .info {
    padding:0;
  }
  
  .public .frame1 .fl-right {
    width: 100%;
    padding-top: 20px;
  }
  
  .public .frame1 .fl-left {
    text-align:center;
  }
  
  .public .frame2 {
    background: #fff;
  }
  
  .public .new li a {
    margin-left:0px;
  }
  
  .public .link-page {
    padding: 15px 35px 18px 35px;
  }
  
  .public .link-page a.fl-left {
    float:none!important;
  }
  
  .recruit .frame1 {
    padding: 25px 0;
  }
  
  .recruit .frame1 a {
    margin-right: 0px;
    float: none;
    text-align: center;
    margin-bottom: 30px;
  }
  
  .recruit .frame1 a:last-child {
    margin-bottom:0;
  }
  
  .recruit .frame2 .container {
    padding:0!important;
  }
  
  .recruit .frame2 h1 {
    padding-left:8px !important;
    padding-right:8px !important;
  }
  
  .recruit .frame2 .sp img {
    width:100%;
    margin-bottom:30px;
  }
  
  .recruit-detail h1 {
    margin-right: 0px;
  }
  
  .table-info {
    width: 100%;
    margin: 20px 0 0px 0px; 
  }
  
  .table-info .cell {
    height:auto;
    width: 100% !important;
    float: left;
    border: none!important;
    font-size:14px;
  }
  
  .service .content .box .fl-left {
    text-align:center;
  }
  
  .service .content .box .fl-left img {
    text-align: center;
    margin:0 auto 10px auto;
  }
  
  .service .content .box .fl-right {
    width: 100%;
    text-align: center;
  }
  
  .service .content .box .fl-right p {
    margin-top: 5px;
    margin-bottom: 15px;
  }
  
  .service .content .box {
    padding-top: 25px;
    padding-bottom: 30px;
  }
  
  .effort .box .info .fl-left {
    text-align:center;
  }
  
  .effort .box .fl-right p {
    width: 100%;
  }
  
  .effort .box .fl-right a {
    position: relative;
    float: right;
    margin-top: 10px;
    margin-right:10px;
  }
  
  .access .box01 {
    margin-bottom: 40px;
    padding-bottom: 1px;
  }
  
  .access .content .title {
    margin: 0 0 10px 0;
  }
  
  .access p {
    margin: 15px 0 35px 0;
  }
  
  .access .title img:nth-child(2) {
    margin-left: 0px;
  }
  
  .contact .content .box .text .fl-left {
    margin-right:0;
  }
  
  .contact .content .box .text {
    font-size: 14px;
  }
  
  .contact .content .box01 {
    margin-bottom: 35px;
  }
  
  .contact .content .container {
    padding:0 5px!important;
  }
  
  .kessan .content {
    margin:20px 0 40px 0;
  }
  
  .student .box01 {
    margin: 15px 0px 15px 0px;
  }
  
  .student .box01 .text {
    padding-left: 0px;
    font-size: 15px;
  }
  
  .student .box01 .text .title {
    width: 100%;
    line-height: 1.2;
    font-size: 19px;
    padding: 10px;
  }
  
  .student .box01 img {
    width:100%;
  }
  
  .student .box01 .list-image {
    margin-top: 20px;
  }
  
  .student .box01 .list-image img {
    margin-bottom:20px;
  }
  
  .student .box02 .info .fl-left {
    width: 100%;
  }
  
  .student .box02 .info p {
    padding: 5px 0px 20px 0px;
  }
  
  .student .box02 .info .text {
    margin-bottom: 20px;
  }
  
  .student .box02 .info .text li {
    margin-bottom: 20px;
  }
  
  .student .box02 .info .text li span {
    margin-left: 0px;
  }
  
  .student .box02 {
    margin-left: 0px;
  }
  
  .student .box02 .info {
    margin: 15px 0 35px 0;
  }
  
  .student .box02 .info .fl-left {
    width: 100%;
  }
  
  .student .box02 .info .fl-right {
    width:100%;
  }
  
  .carrerpass .box {
    margin: 0px 0px 45px 0px;
  }
  
  .carrerpass .box .info img {
    width: 100%;
  }
  
  .information .content .info {
    margin-left:0!important;
    margin-right:0!important;
  }
  
  .information .box01 .info .fl-left {
    float:left;
  }
  
  .information .box01 .info .fl-right {
    width:100%;
    font-size:12px;
  }
  
  .information .box01 .info {
    margin: 20px 0px 20px 0px;
 }
 
 .information .box01 .al-right {
    width:100%;
    float:none;
    margin-bottom:10px;
 }
 
 .information .box02 .container {
    padding:0!important;
 }
 
 .information .box02 .info h3 {
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left:0;
    text-align:left;
 }
 
  .information .box02 h1 {
    margin-left:8px;
  }
 
 .information .box02 .info {
    width: 100%;
    padding-top: 5px;
    text-align:center;
 }
 
 .information .box02 .info .sp {
  display:inline-block!important;
 }
 
 .information .box02 .info ul {
    margin-left: 10px;
    text-align:left;
 }
 
 .information .box02 .info li {
    line-height: 1.2;
    font-size: 16px;
    background: url(../image/icon-box02-information.png) no-repeat left top;
    margin-bottom: 10px;
 }
 
 .information .box03 .table {
    margin: 20px auto;
 }
 
  .information .box03 .table,
  .information .box03 .table .row .cell-title,
  .information .box03 .table .row .cell-text  {
    width:100%;
    display:block;
  }
  
  .information .box03 .table .row .cell-title {
    border-right: none;
    font-size:12px;
  }

  .information .box03 .table .row .cell-text  {
    font-size:14px;
    font-weight:bold;
  }
  
  .information .box03 {
    padding:20px 0;
  }
  
  .information .box04 .info {
    padding: 15px 0 45px 0px;
  }
  
  .information .box04 .info img {
    width:100%;
  }
  
  .information .box05 .info {
    padding: 15px 0 0px 0px;
  }
  
  .information .box05 .info {
    padding: 20px 0 0px 0px;
    text-align:center;
  } 
  
  .information .box05 .info .sp {
    display:inline-block!important;
  }
  
  .information .box05 .info .photo {
    width: auto;
    margin-bottom: 0px;
    margin-right: 0px;
  }
  
  .information .box05 .info .text {
    margin:10px 0 45px 0;
    font-size:14px;
    text-align:left;
  }
  
  .information .box06 {
    padding: 20px 0 5px 0;
  }
  
  .information .box06 .info {
    padding: 20px 0px 0 0px;
  }
  
  .information .box06 .info li {
    font-size:14px; 
  }
  
  .supporter .box01 .info img {
    width:300px;
    text-align:center;
    margin-top:20px;
  }
  
  .supporter .box h1 {
    margin-right:0;
  }
  
  .supporter .box01 .info {
    margin: 0px 0 15px 0;
    text-align:center;
  }
  
  .supporter .box03 .text {
    padding: 20px 0px 25px 0px;
    text-align: center;
  }
  
  .supporter .box04 .info, .supporter .box05 .info {
    padding: 5px 0px 20px 0px;
    text-align:center;
    
  }
  
  .supporter .box01 .info .fl-left {
    margin-right:0
  }
  
  .supporter .box04 .info .list-image {
    text-align:center;
  }
  
  .supporter .box04 .info .list-image img {
    width:300px;
  }
  
  .supporter .box04 .info .text {
    width: 100%;
  }
  
  .supporter .box05 {
    margin-top: 0px;
  }
  
  .supporter .info {
    text-align:center;
  }
  
  .supporter .box05 .info img,
  .supporter .box06 .info img,
  .supporter .box07 .info img  {
    width:300px;
  }
  
  .supporter .info .sp,
  .supporter .info .sp,
  .supporter .info .sp,
  .supporter .box02 .info1 .sp  {
    width:300px;
    display:inline-block!important;
  }

  .supporter .box06 .info {
    padding: 5px 0 15px 0;
  }
  
  .supporter .box07 .info img {
    margin-top: 20px;
  }
  
  .supporter .box07 .info {
    padding: 10px 0px 20px 0px;
  }
  
  .supporter .box08 .info, .supporter .box09 .info {
    padding: 10px 0px 20px 0px;
  }
  
  .supporter .box10 .info {
    padding: 20px 0px 75px 0px;
  }
  
  .supporter .box04 .info .list-image img:first-child {
    margin-bottom:30px;
  }  
  .supporter .box02 .info1 {
    padding: 0px 0px 30px 0px;
    text-align:center;
  }
  
  .supporter .box02 .info2 {
    padding: 30px 0px 0 0px;
  }
  
  .supporter .box02 .info2 .text li {
    width:100%;
  }
  
  .supporter .box02 .info2 .text {
    text-align:center;
  }
  
  .supporter .box02 .info2 .text .fl-left {
    margin-bottom:15px;
    margin-right:0;
  }
  
  .supporter .box02 .info2 .text li p {
    margin: 15px 0 35px 0;
  }
  
  .carrerpass .box .info {
    margin-left:0;
  }
  
  .carrerpass .content {
    padding-bottom:0px;
  }
  
  .carrerpass .box .info p {
    font-size:16px;
  }
  
/*------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------*/
  footer .info {
	padding: 25px 0 30px 0;
  }
  
  footer .info .container {
    padding: 0 5px;
  }
  
  footer .logo-footer {
	 width:100%;
  }
  
  footer .info .text-contact .text:first-child {
    margin-right: 0px;
    margin-bottom: 15px;
  }

/*add20230803*/
.contact .content .box.box01 .textimg:before {
display: none;
}

.contact .content .box.box01 .textimg img.person {
display: block;
margin: 10px auto;
width: 200px;
height: 200px;
}

/*add20231006*/
.contact2024 {
margin: 30px 10px 40px;
background: url(../image/image_20231006.png) no-repeat 96% 20%;
font-size: 14px;
}

.contact2024 p {
margin-bottom: 80px;
}

.contact .content .box .text img {
max-width: 100%;
}

/*add20241127*/
.ouboTb th {
display: block;
width: 100%;
}

.ouboTb td {
display: block;
width: 100%;
}

.ouboTb input {
font-size: 16px;
}

.ouboTb textarea {
font-size: 16px;
}


}


