/* スマートフォン用CSS */
@media screen and (max-width: 640px) {



body {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
    margin: 0;
    padding: 0;
}

    
.wrapper {
  width:100%;
  overflow:hidden;
}    

a { 
text-decoration:none;
    color: #555555;
    cursor: pointer;
}

 a:hover {
    color: #2c4198;
    text-decoration: none;
}

p {
   font-size: 14px;
    line-height: 1.6;
}


p.title1 { font-size: 15px;
    font-weight: bold;
    background-image: url(../img/menu_arrow.png);
    background-repeat: no-repeat;
    background-size: 4px 7px;
    background-position: 0px 11px;
    padding-left: 10px;
    padding-top: 5px;
    font-size: 15px;
    
}

p.title2 { font-size: 14px;
    font-weight: bold;   
}

.wrap {
    width: 100%;
    height: auto;
    margin: 0 auto;
}

#header {
padding: 0;
display: block;
    width: 100%;
    margin: 0 auto;
    background: #FFF; 
    left: 0;
    top: 0;
    z-index: +100;
    border-bottom: solid 1px #DDDDDD
}

#header .fixbar {
  position: absolute;
  background-color: #fff;
  width: 100%;
  top: 33px;
}

.fix_wrap {
    width: 960px;
}

#header.fixed .fixbar {
  position: fixed;
  top: 0px;
}

#hdr_menu {
    width: 100%;
    padding-top: 5px;
}

#menu_right {
    display: none;
}

.left {
    margin-top: -24px;
    padding-left: 10px;
    width: 20%;
    float: left;
}

#gnav {
 display:none;/*モバイル時は非表示*/
}
 .slicknav_menu {
 display:block;/*モバイル時は表示*/}
}

#gnav {
    width: 600px;
    padding-top: 40px;
        float: right;
}

#gnav ul li {
font-family: "Noto Sans Japanese";
width: 115px;
    text-align: center;
}

#gnav ul a {
    position: relative;
	display: inline-block;
	transition: .3s;
}

#gnav ul a::after {
    color: aqua;
    position: absolute;
	bottom: -10px;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #2c4198;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

#gnav ul a:hover::after {
	width: 85%;
}

#change {
display: none;
}

.fix_wrap2{
    display: none;
}
#slide_pc {
   display: none;
}

.content_list {
    margin: 0 auto;
    width: 290px;
}

.clearfix:after{
	content: "";
	clear: both;
	display: block;
}
/*.content_list ul {
    float:left;
   position:relative;
}
.content_list ul li {
    position:relative;
    padding: 0 auto;
}

.content_list ul li.last {
    margin-right: 0px;
}
*/
p.top_ps {
    font-weight: bold;
    font-size: 95%;
}

.ct_01 {
    text-align: center;
    font-family: "Noto Sans Japanese";
    border-bottom: solid 2px #DDD;
    padding-bottom: 8px;
    margin-top: 20px;
    margin-bottom: 20px;
font-size: 22px;
    color: #2c4198;
    font-weight: bold;
}

.ct_02 {
    margin-top: 10px;
    float: right;
    font-size: 80%;
    background-image: url(../img/menu_arrow.png);
    background-repeat: no-repeat;
    background-size: 4px 7px;
    background-position: 0px 6px;
    padding-left: 12px;
}

.ct_03 {
    font-size: 15px;
    font-weight: bold;
     background-image: url(../img/sankaku_blue.png);
background-repeat: no-repeat;
    background-size: 5px 7px;
    background-position: 0px 8px;
    padding-left: 10px;
}

.ct_04 {
   font-size: 15px;
    font-weight: bold; 
}

.ct_05 {
    font-size: 15px;
    font-weight: bold;
  color: #2c4198;
}

.ct_06 {
    font-size: 15px;
    font-weight: bold;
  color: #fff;
    background-color: #6C8EB9;
    width: 100%;
    text-align: center;
    padding: 8px 0;
}

.ct_07 {
    font-size: 17px;
    font-weight: bold;
     color: #2c4198;
}

.block_news01 li {
     background-image: url(../img/sankaku_blue.png);
background-repeat: no-repeat;
    background-size: 5px 7px;
    background-position: 0px 23px;
    padding-left: 15px;
color: #555555;
    font-size: 14px;
    line-height: 55px;
    white-space: nowrap;
    border-bottom: dotted 1px #BBCCDD;    
}

.recruit_bn {
    float: right;
    width: 290px;
    margin-bottom: 30px;
}



/*フッター*/


#footer_menu {
    width: 100%;
    padding-bottom: 0;
    background-color: #f5f5f5;
}


.fm_wrap {
     width: 100%;
    float: none;
    margin: 0 auto;
text-align: center;
}

.fm_left {
    margin: 0 auto;
    padding: 30px 0 20px 0;
}

.fm_left h2 {
    margin: 5px 0px;
    color: #444444;
  font-size: 14px;
    font-weight: bold;
}

.fm_left address {
    line-height: 1.5em;
    font-style: normal;
    font-size: 12px;
    color: #444444;
}

.fm_right {
display: none;
}

.fmr_cate {
display: none;
}

p.fmr_title {
    padding: 0px 0px 5px;
    margin: 0 0 5px;
    color: #858484;
    font-size: 90%;
}

.fmr_cate ul {
  margin: 0 0 20px;
}

.fmr_cate ul li {
  font-size: 80%;
    height: 24px;
    background-image: url(../img/menu_arrow.png);
    background-repeat: no-repeat;
    background-size: 4px 7px;
    background-position: 0px 5px;
    padding-left: 9px;
}
#footer_cr {
    height: 30px;
    background-color: #2c4198;
    padding-top:10px;
    
}

#footer_cr p {
    color: #fff;
    text-align: center;
    font-size: 12px;
}

/*マウスオーバー時*/
.fade {  
    width: 100%;
    height: auto;
    -webkit-transition: 0.4s ease-in-out;  
       -moz-transition: 0.4s ease-in-out;  
         -o-transition: 0.4s ease-in-out;  
            transition: 0.4s ease-in-out;  
}  
.fade:hover {  
    opacity: 0.6;  
    filter: alpha(opacity=60);  
}   


/*TOPページコンテンツ一覧*/

.btn a {
float: left;
display: block;
width:290px;
height:200px;
background: url(../img/zaitaku_W580_a.jpg) no-repeat;
background-size: 290px,200px;
margin: 10px 0;
padding: 0;
}

.btn a img {
vertical-align: top;
transition: opacity 0.8s;
}

.btn a:hover img {
opacity: 0;
}

.btn2 a {
float: left;
display: block;
width:290px;
height:200px;
background: url(../img/syain_W580_a.jpg) no-repeat;
background-size: 290px,200px;
margin-bottom: 10px;
padding: 0;
}

.btn2 a img {
vertical-align: top;
transition: opacity 0.8s;
}

.btn2 a:hover img {
opacity: 0;
}

.btn3 a {
float: right;
display: block;
width:290px;
height:200px;
background: url(../img/dokuritsu_W580_a.jpg) no-repeat;
background-size: 290px,200px;
margin-bottom: 10px;
padding: 0;
}

.btn3 a img {
vertical-align: top;
transition: opacity 0.8s;
}

.btn3 a:hover img {
opacity: 0;
}


.top_content2 {
    margin-bottom: 20px;
}

.content2_list{
margin-top: 20px;  
    margin-bottom: 20px;
}
.content2_list ul li {
    font-size: 80%;
    width: 50%;
    height: auto;
    margin: 0 auto;
}

.content2_list ul li p {
    background-image: url(../img/menu_arrow.png);
     background-repeat: no-repeat;
 background-size: 4px 7px;
    background-position: 0px 5px;
    padding-left: 9px;
}

.content2_list a:hover{
    color: #2c4198;
    text-decoration: none;
}
.content2_list ul li.last {
    width: 50%;
    height: auto;
    margin: 0 auto;
}

/*トップへ戻るボタン*/
.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
}
.pagetop a {
    display: block;
    background-color: #505050;
    text-align: center;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    padding: 20px 30px;
	filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
    border-radius: 7px;
    -webkit-border-radius: 7px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 7px;   /* Firefox用 */  
}
.pagetop a:hover {
    display: block;
    background-color: #2c4198;
    text-align: center;
    color: #fff;
    font-size: 14px;
    text-decoration: none;
    padding: 20px 30px;
	filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
    border-radius: 7px;
    -webkit-border-radius: 7px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 7px;   /* Firefox用 */  
}
    
}