
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@600&display=swap');

@charset "utf-8";
body {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif;
	color: #333;
	box-sizing: border-box;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
}

.fo{
font-family: 'Noto Sans JP', sans-serif;
}


.rinen dt{
  float: left;
  margin-bottom:20px;
}

.rinen dd{
  margin-left: 40px;
  margin-bottom:20px;
}



.box4{
    padding: 8px 19px;
    margin: 2em 0;
    color: #2c2c2f;
    background: #edfdf1;
    border-top: solid 5px #273b69;
    border-bottom: solid 5px #273b69;
}
.box4 p {
    margin: 0; 
    padding: 0;
}



.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #273b69;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #273b69;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}



.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #273b69;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}


.box28 {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
    border: solid 2px #273b69;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #273b69;
    color: #ffffff;
    font-weight: bold;
}
.box28 p {
    margin: 0; 
    padding: 0;
}

.dott li { list-style:square inside; margin-left: 10px;
    text-indent: -20px;margin-bottom:20px;}

.box30 {
    margin: 2em 0;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.box30 .box-title {
    font-size: 1.2em;
    background: #273b69;
    padding: 14px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box30 p {
    padding: 15px 20px;
    margin: 0;
     font-size: 1em;
     text-align: center;
     line-height:200%;
}



.f-201 {
    margin: 0; 
    padding: 0;
}



.tbl-r02 table {
  width:100%;
  
}
.tbl-r02 {
    width: 100%;
  }

.tbl-r02 th {
  background: #273b69;
  border: solid 1px #ccc;
  color: #fff;
  padding: 10px;
  
}
.tbl-r02 td {
 border: solid 1px #ccc;
  padding: 10px;
}

@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl-r02 {
    width: 100%;
  }
  .tbl-r02 th,
  .tbl-r02 td {
 border-bottom: none;
    display: block;
    width: 100%;
  }
}



.cyui dt{
  float: left;
  font-size:15px;
}

.cyui dd{
  margin-left:30px;
  font-size:15px;
}

.check dt{
  float: left;
  margin-bottom:20px;
  
}

.check dd{
  margin-left:30px;
  margin-bottom:20px;
  
}






h3 {
  position: relative;
  padding: 1em 4em 1em 1em;
  -webkit-background: linear-gradient(-155deg, rgba(0, 0, 0, 0) 1.5em, #a9eca5 0%);
  background: linear-gradient(-155deg, rgba(0, 0, 0, 0) 1.5em, #273b69	 0%);
  border-radius: 6px;
  font-size:25px;
  color:#fff;
  font-family: 'Noto Serif JP', serif;
}
h3::after {
  position: absolute;
  top: 0;
  right: 0;
  content: '';
  width: 1.65507em;
  height: 3.5493em;
  background: -webkit-linear-gradient(to left bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, .1) 0%, rgba(0, 0, 0, .2));
  background: linear-gradient(to left bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, .1) 0%, rgba(0, 0, 0, .2));
  border-bottom-left-radius: 6px;
  box-shadow: -.2em .2em .3em -.1em rgba(0, 0, 0, .15);
  -webkit-transform: translateY(-1.89424em) rotate(-40deg);
  transform: translateY(-1.89424em) rotate(-40deg);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}


.clear { clear:both; }  
.clear hr { display:none; }  


.testtt { padding: 15px;}

h4 {
  padding: .5em .75em;
  background-color: #fff;
  border-left: 6px solid #273b69;
}

.container, .row, header, section, footer {
	width: 100%;
	float: left;
}
.cont-big {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.cont-big1 {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	margin-top:0px;
}
.cont-mn {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.cont {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}

* { box-sizing: border-box;}
img { max-width: 100%; height: auto;}
a { text-decoration: none; color:inherit;}
a:hover { color: inherit;}
.hv-o:hover {opacity:0.7;}

.head { border-top:4px solid #273b69 ; border-bottom: 4px solid #f3f3f3;}


.header-fixed
{
    z-index: 9999;
  position: fixed;
  top: 0px;
  left: 0px;
  background:#fff;
}





#aboutustable {
   width: 65%;
   margin: 0 auto;
   float: left;
}
#aboutustable td a {
   color: #000000;
}
.contacttell {
   color: #eb5d40;
   font-weight: bold;
   font-size: 19px;
   line-height: 170%;
}
#aboutustable1 {
   width: 100%;
   margin: 0 auto;
   float: left;
}
#aboutustable1 td a {
   color: #000000;
}













.logo { width: 25%; display: inline-block; vertical-align: middle;}
.menu { width: 64%; display: inline-block;  vertical-align: middle; text-align:right; position: relative;}
.menu ul li { display: inline-block; text-align:center; position: relative;}
.menu ul li a { display: inline-block; width:100%; position: relative; line-height: 140%; font-size: 18px; padding: 15px 15px;}
.menu ul li a.active, .menu ul li a:hover { display: inline-block; position: relative;}
.menu ul li a.home { color:#1d1d1e;}
.menu ul li a.active:before, .menu ul li a:hover:before { content: ""; border-bottom:4px solid #273b69 ; width: 100%; position: absolute; bottom: -4px; left: 0;}
.menu ul li .mn-english { display: block; font-size: 18px;}
.menu ul li a:after { content: ""; width: 1px; height:35px; position: absolute; right: -5px; top: 20px;
-ms-transform: rotate(15deg); /* IE 9 */
-webkit-transform: rotate(15deg); /* Safari */
transform: rotate(15deg);
}
.menu ul li:last-child a:after { content: ""; border-right:none;}
.menu ul li:last-child a { padding-right: 0;}

.menu-sp { display: none; width:20%; vertical-align: middle; text-align: right; padding: 20px 0; font-size: 18px; color:#273b69;}

.slide { padding: 25px 0; border-bottom: 4px solid #f3f3f3;}

.footer-slide { background:#f9f5ee; padding: 15px 10px;}
.footer { }

.ft-logo { width: 25%; display: inline-block; vertical-align: middle;}
.ft-menu { width: 74%; display: inline-block;  vertical-align: middle; text-align:right;}
.ft-menu ul li { display: inline-block; text-align:center; position: relative;}
.ft-menu ul li a { display: inline-block; width:100%; position: relative; line-height: 160%; font-size: 18px;padding: 14px 14px;}
.ft-menu ul li a.active, .menu ul li a:hover { display: inline-block; position: relative; color:#273b69;}
.ft-menu ul li .mn-english { display: block; font-size: 13px;}
.ft-menu ul li a:after { content: ""; width: 1px; height:35px; position: absolute; right: 0; top: 30px;
-ms-transform: rotate(15deg); /* IE 9 */
-webkit-transform: rotate(15deg); /* Safari */
transform: rotate(15deg);
}
.ft-menu ul li:last-child a:after { content: ""; border-right:none;}
.ft-menu ul li:last-child a { padding-right: 0;}

.copyright { background:#273b69 ; color:#fff; padding: 10px 0; line-height: 160%;}
.pagetop { position: absolute; right:0; top: 0;}

.main { padding: 40px 0 70px 0;}
.left { width:73%; float:left; margin-right:3%;}
.right { width:24%; float:right;}

.in-about { background:#fff; padding: 0px;}
.in-photo { text-align: center;}
.in-text { font-size: 18px; color:#000; line-height: 170%; margin-top:0px;font-family: 'Noto Sans JP', sans-serif;}
.in-text11 { font-size: 18px; color:#000; line-height: 170%; margin-top:0px;font-family: 'Noto Sans JP', sans-serif;}

.in-news { margin-top:50px;}
.in-news-title { font-size: 20px; line-height: 150%; color:#484848;  border-bottom: 1px solid #273b69;}
.in-news-titlesm { font-size: 15px; color:#333333;}
.in-news-content { max-height:205px; overflow-y: auto; margin-top: 20px;}
.in-news-item { font-size: 18px;padding:14px 0; border-bottom: 1px dotted #ccc; line-height: 160%; width:97%; margin-right:3%; background:url(../img/ico-right.png) left top 18px no-repeat; padding-left: 25px;}
.in-news-item:first-child { padding-top: 0; background-position: left top 9px;}
.in-news-item a:hover { text-decoration: underline;}

.right-photo { margin-bottom:8px; text-align: center;}
.right-menu { margin-top:30px}
.right-menu ul li { margin-bottom:10px; position: relative;}
.right-menu ul li a { display: inline-block; width:100%; padding:15px 20px; border:2px solid #273b69	; font-size: 18px; color:#333333; line-height: 180%; border-bottom-right-radius:20px; background:url(../img/ico-right2.png) right 20px center no-repeat; padding-right: 20px;}
.right-menu ul li a:hover { background:#273b69	; color:#fff; transition: 0.5s;}
.right-menu ul li a:hover .right-menu-english { color:#fff;}
.right-menu ul li .right-menu-english { display: block; font-size: 10px; color:#727274; font-weight: normal;}
.right-map { margin-top: 20px;}
.right-map iframe { width:100%; height:200px;}
.right-map-text { margin-top:10px; line-height: 160%;}
.map-text-b { font-weight: bold; font-size: 14px;}
.map-text { font-size: 13px;line-height: 180%;margin-top: 20px;}

.sb-bdc { position: absolute; right:1px; bottom:1px;}

.banner { position: relative;}
.banner-text { font-size: 25px; color:#fff; font-weight: bold;
position:absolute; top:50%; left:7%; -webkit-transform: translate(-7%, -50%); -ms-transform: translate(-7%, -50%); transform: translate(-7%, -50%);line-height: 180%;font-family: 'Noto Serif JP', serif;}
.banner-text2 { display: inline-block; color:#222222; font-size: 18px; padding-left: 10px;}

/*achieve*/
.achieve { display: flex; flex-wrap: wrap;}
.achieve-item { display: inline-block; width:23.5%; margin-right:1.5%; margin-bottom:10px; align-items: center; text-align: center; justify-content: center;}
.achieve-title { display: inline-flex; border: 1px solid #0168B7; font-size: 14px; color:#5a3c1a; font-weight: bold; line-height: 160%;}
.achieve-photo { background:#f3f3f3;}
/*achieve*/



a:link { color: #000; }
a:visited { color: #000; }
a:hover { color: #273b69; }
a:active { color: #273b69; }


a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
	width: 50%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_2 > div{
		width: 100%;
	}
}

.sample2 {
	
	overflow:		hidden;
	position:		relative;
}
.sample2 .caption {
	font-size:		25px;
	text-align: 		left;
	color:			#fff;
	margin:25px;
	line-height:150%;
	text-align: center;
}
.sample2 .mask {
	width:			100%;
	height:			100%;
	position:		absolute;
	top:			0;
	left:			0;
	opacity:		0;	/* マスクを表示しない */
	background-color:	rgba(207,183,19,0.7);
	-webkit-transition:	all 0.6s ease;
	transition:		all 0.6s ease;
}
.sample2:hover .mask {
	opacity:		1;	/* マスクを表示する */
	padding-top:		50px;	/* ホバーで下にずらす */
}


.example {
  position: relative;
  }

.example p {
  position: absolute;
  top: 50%;
  left: 13%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-0%,-50%);
  margin:0;
  padding:0;
  /*文字の装飾は省略*/
  font-size: 25px;
    line-height: 140%;
    text-align: center;
  }

.example img {
  width: 100%;
  }

.f-35_1 {
    font-size:35px;
}

/*about*/
.about {}
.about-table { width:100%; border: 1px solid #f3f3f3;}
.about-table tr:nth-child(even) { background: #fff8f1;}
.about-table tr:nth-child(odd) { background: #ffe8ce;}
.about-table tr td { padding:12px 20px; line-height: 200%; font-size: 18px;}
.about-table tr td:first-child { font-weight: bold;}
/*about*/

/*contact*/
.contact { font-size: 14px; line-height: 160%;}
.contact-table { width:100%; border-collapse: separate; border-spacing: 10px; margin-top:-10px;}
.contact-table tr td { font-size: 18px; color:#333333; line-height: 160%; vertical-align:top;}
.contact-table tr td:first-child { width:36%; position: relative; padding-top: 10px;}
.contact-table tr td .contact-note { position: absolute; right:0; display: inline-block; font-weight: bold; color:#fff; background:#273b69; padding: 2px 15px;}
.contact-table tr td input, select,.contact-table tr td textarea { width:100%; padding: 12px 10px; border: 2px solid #f3f3f3; resize: vertical;font-family: 'Noto Sans JP', sans-serif;}
.contact-table tr td button { background:#273b69; color:#fff; border:none; outline: none; width:100%; padding: 11px; cursor: pointer; border:3px solid #273b69; margin-top: 10px; font-weight: bold;font-family: 'Noto Sans JP', sans-serif;}
.contact-table tr td button:hover { background:#fff; color:#273b69; border: 3px solid #273b69; transition: 0.7s;}
.contact-table tr td input[readonly], .contact-table tr td textarea[readonly] { background:#f1f1f1;}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

/**/

@media screen and (max-width:850px) {
.cont { width:96%; margin: 0 2%;}

.head { padding: 20px 0;}
.logo { width:50%;}
.menu-sp { display: inline-block;}
.menu-sp i { font-size: 18px; padding-right: 10px;}
.menu { width:100%; display: block;}
.menu ul { display: none; width:100%; position: fixed; top:120px; left:0; z-index: 99; background:#fff;}
.menu ul li { width:100%;}
.menu ul li a { background:#fff; border-bottom: 1px solid #ccc; padding: 10px;}
.menu ul li:last-child a { padding: 10px;}
.menu ul li a:after { display: none;}

.ft-menu ul li a { padding: 15px;}
.ft-menu ul li a:after { transform:rotate(0);}


.menu-sp {
   
    width: 40%;
 }   
}

@media screen and (max-width:768px) {
.menu ul { display: none; width:100%; position: fixed; top:120px; left:0; z-index: 99; background:#fff;}
.banner-text { font-size: 24px; line-height: 120%;}
.slide { padding:10px 0;}
.ft-logo { width:100%; text-align: center; padding: 20px 0;}
.ft-logo img { max-width:300px;}
.ft-menu { width:100%; text-align: left;}
.ft-menu ul li { width:100%;}
.ft-menu ul li a { border-top: 1px solid #ccc; padding: 10px 0 5px 0;}
.ft-menu ul li a:after { border:none;}

.copyright { text-align: center;}
.pagetop { width:50px; position: fixed; bottom: 50px; right:5px; z-index: 3; top: auto;}
.pagetop i { background:#000; border-radius:50%; padding: 10px 11px;}
.pagetop-text { display: none;}

.left { width:100%; margin-bottom:50px; border-bottom:1px solid #ccc; padding-bottom: 50px; margin-right:0;}
.right { width:100%; margin: auto; float:none;clear: both;}

.in-about { padding: 10px;}

.testtt { font-size: 12px;padding: 5px;}

.achieve-item { width:32.33%; margin-right:1%; margin-bottom:1%;}

/**/
.contact-table tr td { width:100%; float:left; padding: 5px 0;}
.contact-table tr td:first-child { width:100%;}
.n-back { width:100%; float:left; background:#000; text-align: center;}
/**/
/**/
.about-table tr td:first-child { width:100%;}
.about-table tr td { width:100%; float:left; padding: 5px;}
/**/

.mnfix { position: fixed; background:#fff; z-index: 99;}

.in-text11 { font-size: 12px; color:#000; line-height: 170%; margin-top:0px;font-family: 'Noto Sans JP', sans-serif;}

.f-121 {
    font-size:12px;
}

.f-35_1 {
    font-size:30px;
}


.tab_sp td{
   width:100%;
   display:block;
   border: none;
   
}
}

.tab{
   text-align:center;
   
}


@media screen and (min-width: 650px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 650px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
  
  
  h3 {
    font-size: 16px;
}

.tab{
   text-align:left;
   
}
.in-text {
    font-size: 16px;
}
.in-news-item {
    font-size: 16px;
}
}


@media screen and (max-width:480px) {



.main { padding: 10px 0 30px 0;}
.left { margin-bottom: 25px; padding-bottom: 25px;}
.in-news { margin-top:25px;}
.achieve-item { width:48%; margin-right:2%; margin-bottom:2%;}
.banner-text { font-size: 15px; line-height: 180%;}
.banner-text2 { font-size: 14px; display: block;}
.map-text { font-size: 16px;line-height: 180%;}

}
