@charset "UTF-8";

/* ========BASIC======== */
html {
   overflow-y:scroll;
}

body {
   margin:0;
   padding:0;
   line-height:1.6;
   letter-spacing:1px;
   font-family: "メイリオ","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";;
   font-size:16px;
   font-size:1rem;
   color:#333;
}

br {
   letter-spacing:normal;
}

a {
   color:#191970/*#98534B*/;
   text-decoration:none;
}

a:hover {
   text-decoration:underline;
}

img {
   border:0;
   vertical-align:bottom;
}

.img_btn{

}

h1,h2,h3,h4,h5,h6 {
   margin:0;
}


/* ========TEMPLATE LAYOUT======== */
#top {
   width:960px;
   margin:0 auto;
}

#header {
   width:960px;
   top:0;
}

.pc-nav {
   display:flex;
   width:960px;
   margin-bottom:0px;
}

#icatch {
   width:960px;
   margin:0 auto;
   background:#fff;
}

#contents {
   clear:both;
   width:960px;
   margin:0 auto;
   padding:10px 0 ;
   background:#fff;
}

#footMenu {
   width:960px;
   padding:10px 0;
}

#footer {
   width:960px;
   clear:both;
   padding:10px 0;
}


/* ========HEADER======== */
#header h1 {
   margin:0;
   padding:10px 0;
   color:#333;
   
}

#header h1 a {
   color:#9B0000;
}

#header h1 a:hover {
   color:#D30000;
   text-decoration:none;
}

/* ========MENU======== */
.pc-nav ul {
   float:left;
   margin:0;
   padding:0;
}

.pc-nav li {
   margin:0;
   padding:0;
   float:left;
   font-size:12px;
   font-size:0.75rem;
   color:#333;
   text-align:center;
   list-style-type:none;
}

.pc-nav li span {
   font-size:15px;
   font-size:1rem;
   color:#fff;
}

.pc-nav li a {
   display:block;
   width:160px;
   padding:20px 0;
   color:#e6e6fa;/*#FFF1A4*/;
   background:url(../images/bg_menu.gif) 0 100% repeat-x;

}

.pc-nav li a:hover {
   text-decoration:none;
   background:url(../images/bg_menu.gif) 100% 100% repeat-x;
}


/* ========INFO======== */
#info h2 {
   font-size:16px;
   font-size:1rem;
   color:#333;
   padding:2px 5px 0px 5px;
   border-bottom:3px solid #e6e6e6;
   position: relative;
}

#info p{
   margin:50px 0px;

}

#info  dt {
   clear:left;
   float:left;
   width:7em;
   padding:10px 0.5em;
}

#info  dd {
   margin-left:0;
   padding:10px 0.5em 10px 8em;
   background:#fff url(../images/bg_info_line.gif) 0 100% repeat-x;
}

/* ========NEWS======== */
#news p {
   margin:0;
   padding:0 0 1em 0;
}

#news h2 {
   background:#422F28;
   font-size:16px;
   font-size:1rem;
   color:#fff;
   padding:5px;
}


/* ========MAIN CONTENTS======== */
#main_long {
   width:960px;
}

#main a,#main_long a {
   color:#9B0000;
}

#main a:hover,#main_long a:hover {
   color:#9B0000;
}

#main h2,#main_long h2 {
   margin:0 0 25px 0;
   padding:0;
   font-size:20px;
   font-size:1.2rem;
   border-bottom:3px solid #ccc;
}

#main h2.person,#main_long h2.person{
	padding: .5em .75em;
	background-color: #f6f6f6;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
}

#main h3,#main_long h3{
   font-size:16px;
   font-size:1rem;
   padding: 0 0 0 5px;
   margin:0px 0 15px 0;
   border-left: 6px solid #4169e1/*#823C34*/;
}

#main_long h3{
   margin:0 0 15px 0;

}

#main .left_moji{
    text-align:left;
    float:left;

}

#main .prog,#main_long .prog{
	margin: 0px 0 50px 0;
}

#main h6 {
    margin:0 0 10px 0;
   font-size:16px;
   font-size:1rem;
   color:#823C34;
}

#main p, #main_long p{
   margin:20px;
}

#main dt, #main_long dt{
   margin-left:20px;
   margin-bottom:3px;
   display: list-item;
   list-style-type: square;
}

#main dd, #main_long dd {
   margin-left:50px;
   margin-bottom:20px;
   padding:0;
   padding:3px;
}

#main_long .dl_list{
	background-color: #f5fffa;
   padding:20px;
   margin-bottom: 50px;
}

/* Access*/
ul.address{
	list-style: none;
}

.address li{
	margin:0 0 10px 0;
	font-size:14px;
    font-size:0.8rem;
}

/* INFORMATION*/
* html body #main .information dd div {
   display:inline-block;
}

#main .information dt {
   margin:0;
   padding:0 0 0 10px;
   background:url(../images/bg_list.gif) 0 6px no-repeat;
}

#main .information dd {
   margin:0 0 1em 1em;
   padding:3px;
}

#main table,#main_long table{
   width:100%;
   border-collapse:collapse;
}

#main table th,#main_long table th {
   padding:8px;
   font-size:16px;
   font-size:1rem;
   color:#fff;
   text-align:left;
   border:1px solid #ddd;
   background:#6495ed/*#db7100*/;
   font-weight:normal;
}

th.time{
	width:140px;
}
#main table td,#main_long table td {
   padding:8px;
   font-size:14px;
   font-size:0.8rem;
   text-align:left;
   border:1px solid #ddd;
}

table.kigyo th{
	width:160px;
}

.sentense_small{
   font-size:14px;
   font-size:0.8rem;
   margin:0px;
}
.map{
   font-size:14px;
   font-size:0.8rem;
   text-align:right;
    padding:0;
    margin:0;
   
}

.imgmargin{
	margin-left:50px;
}

table.profile td.pic{
	background-color:#D6FAFF;
	width:120px;
	height:150px;
	border-left:none;
}

#sub h2 {
   font-size:16px;
   font-size:1rem;
   font-weight:bold;
   color:#333;
   line-height:1.2;
}

#sub ul {
   margin:5px 0 0 5px;
   padding:0;
}

#sub li {
   padding:5px 0 5px 0;
   list-style:none;
   background:url(../images/bg_sub_line.gif) 0 100% repeat-x;
}

#sub li a {
   display:block;
   width:180px;
   padding-left:12px;
   background:url(../images/bg_list.gif) 0 6px no-repeat;
}

#sub li a:hover {
   border:none;
   font-weight:bold;
   background: url(../images/bg_list.gif) 0 6px no-repeat;
   text-decoration:none;
}


/* ========PAGETOP======== */
#pageTop {
   padding:10px 0;
   text-align:right;
}

#to_submit {
   padding:10px 0;
   text-align:center;
}


#pageTop a {
   padding:0 0 0 12px;
   background:url(../images/bg_pagetop.gif) 0 60% no-repeat;
}


/* ========FOOTMENU========= */
#footMenu {
   position:relative;
   padding:20px 0 0 0;
   border-top:1px solid #CECFCE;
}

#footMenu ul {
   position:relative;
   left:50%;
   float:left;
   margin:0;
   padding:0;
   list-style:none;
}

#footMenu li {
   position:relative;
   left:-50%;
   float:left;
   margin:0 20px 0 0;
   padding:0;
   font-size:16px;
   font-size:1rem;
}


/* ========FOOTER======== */
#footer {
   text-align:center;
   padding:20px 0;
}

.copyright {
   font-size:14px;
   font-size:0.8rem;
}
 
/* ========for smartphone======== */

.pc_icatch { display: block !important; }
.sp_icatch { display: none !important; }

.sp-nav {
   display: none;
}

@media screen and (max-width: 768px) {
   /* eyecatch画像のオンオフ */
   .pc_icatch { display: none !important; }
   .sp_icatch { display: block !important; }
   img{
      max-width: 100%;
   }
   /* ナビメニュー */
   #header {
      width:100%;
   }
   #top {
      width:100%;
   }
   #icatch {
      width:100%;
   }
   #contents {
      width:95%;
   }   
   #footMenu {
      width:100%;
   }
   
   #footer {
      width:100%;
   }
   #main_long {
      width:100%;
   }
   .img_logo{
      height:30px;
   }

   /* ハンバーガーメニュー */
   #hamburger {
      position: absolute;
      top:0;right:0;
      display: block;
      width: 30px;
      height: 25px;
      margin: 10px 10px;
   }
   #hamburger span {
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      width: 100%;
      height: 2px;
      background-color: #000;
      transform: translateY(-50%);
   }
   #hamburger::before {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #000;
   }
   #hamburger::after {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 70%;
      height: 2px;
      background-color: #000;
   }

   /* スマホ用メニュー表示*/
   .pc-nav {
      display: none;
   }
   .sp-nav {
      z-index: 1;
      position: fixed;
      top: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 100vh;
      background: rgba(0, 0, 0, .8);
      transition: all .2s ease-in-out;
      opacity: 0;
      transform: translateY(-100%);
   }
   .sp-nav ul {
      padding: 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      height: 100%;
   }
   .sp-nav li {
      margin: 0;
      padding: 0;
   }
   .sp-nav li span {
      font-size: 15px;
      color: #fff;
   }
   .sp-nav li a, .sp-nav li span {
      display: block;
      padding: 10px 0;
   }
   /*基準となるli要素*/
   .sp-nav .close {
      position: relative;
      padding-left: 20px;
   }

   /*バツ印線1*/
   .sp-nav .close::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      width: 16px;
      height: 1px;
      background: #fff;
      transform: rotate( 45deg );
   }
   /*バツ印線2*/
   .sp-nav .close::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      width: 16px;
      height: 1px;
      background: #fff;
      transform: rotate( -45deg );
   }
   .toggle {
      transform: translateY( 0 );
      opacity: 1;
   }

 }


.redmoji{
	color:red;
}
