@charset "utf-8";
/* CSS Document */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed');
@import url('https://fonts.googleapis.com/css?family=Vollkorn:400,700,900');
@import url('https://fonts.googleapis.com/css?family=PT+Serif');
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);

/* =============================================================================
   clearfix
   ========================================================================== */
.clearfix:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/* IE/Mac */
.clearfix{
	display: inline-table;
	zoom: 1;
}
/* Hide from IE/Mac, apply to IE/Win \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}

.clear {
	clear: both;
	display: block;
}


/* =============================================================================
   デザイン基本
   ========================================================================== */
body {
   margin: 0;
   overflow-y: scroll; /* 2 */
	font-family: 'Noto Sans Japanese', "Helvetica Neue", Helvetica, Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
}

html,body{
   min-width:1170px;
}

ul, ol, dl {
	list-style-type: none;
}

h1,h2,h3,h4,h5,p,ol,ul,li,dl,dt,dd{
	margin:0;
	padding:0;
}

p{
	padding-top:0.5em;
}

img {
   vertical-align:bottom
}

.txt_yg{
	font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
   font-weight: 600;
}

/* -----------------------------------------
   区切り指定
   -----------------------------------------*/

.ne span{
  display:inline-block;
}


/* -----------------------------------------
   文字下げ
   -----------------------------------------*/

.sage{
    padding-left: 1em; 
    text-indent: -1em; 
}

.sage1_5{
    padding-left: 1.5em; 
    text-indent: -1.5em; 
}

.sage2{
    padding-left: 2em; 
    text-indent: -2em; 
}


.sage2_5{
    padding-left: 2.5em; 
    text-indent: -2.5em; 
}

.sage3{
    padding-left: 3em; 
    text-indent: -3em; 
}

.sage4{
    padding-left: 4em; 
    text-indent: -4em; 
}

.sage5{
    padding-left: 5em; 
    text-indent: -5em; 
}

.sage6{
    padding-left: 6em; 
    text-indent: -6em; 
}

.sage7{
    padding-left: 7em; 
    text-indent: -7em; 
}

.ev_sage{
    padding-left: 1em; 
    text-indent: -1em;
    margin-bottom: 7px;
}

/* -----------------------------------------
   下空け
   -----------------------------------------*/

.mb07{
  margin-bottom: 7px;
}

.mb10{
  margin-bottom: 10px;
}

.mb15{
  margin-bottom: 15px;
}

.mb20{
  margin-bottom: 20px;
}

.mb25{
  margin-bottom: 25px;
}

.mb30{
  margin-bottom: 30px;
}

.mb40{
  margin-bottom: 40px;
}

.mb50{
  margin-bottom: 50px;
}

.mb80{
  margin-bottom: 80px;
}

/* -----------------------------------------
   上空け
   -----------------------------------------*/

.mt07{
  margin-top: 7px;
}

.mt10{
  margin-top: 10px;
}

.mt15{
  margin-top: 15px;
}

.mt20{
  margin-top: 20px;
}

.mt25{
  margin-top: 25px;
}

.mt30{
  margin-top: 30px;
}

.mt40{
  margin-top: 40px;
}

.mt50{
  margin-top: 50px;
}

/* -----------------------------------------
   左空け
   -----------------------------------------*/

.ml10{
  margin-left: 10px;
}

.ml15{
  margin-left: 15px;
}

.ml20{
  margin-left: 20px;
}

.ml25{
  margin-left: 25px;
}

.ml30{
  margin-left: 30px;
}

/* -----------------------------------------
   右空け
   -----------------------------------------*/

.mr10{
  margin-right: 10px;
}

.mr15{
  margin-right: 15px;
}

.mr20{
  margin-right: 20px;
}

.mr25{
  margin-right: 25px;
}

.mr30{
  margin-right: 30px;
}



/* -----------------------------------------
   インデックス
   -----------------------------------------*/

h2 {
  position: relative;
  padding: 10px;
  background: -webkit-repeating-linear-gradient(-45deg, #FFE2ED, #FFE2ED 4px,#FFBCD6 3px, #FFBCD6 8px);
  background: repeating-linear-gradient(-45deg, #FFE2ED, #FFE2ED 4px,#FFBCD6 3px, #FFBCD6 8px);
  border-radius: 7px;
  font-size: 140%;
  margin-bottom: 15px;
  color: rgba(0,0,0,1.00);
  font-weight: 900;
}



h3 {
  position: relative;
  font-size: 120%;
  background-color: rgba(255,234,242,1.00);
  border-left: rgba(255,85,150,1.00) 10px solid;
  padding: 5px;
  padding-left: 10px;
  font-weight: 600;
  box-sizing: border-box;
}


h4{
  color: #000000;
  border-bottom: dashed 2px rgba(255,85,150,1.00);
  font-size: 110%
}

h4:before {
  content: '●';
  color: rgba(255,85,150,1.00);
  margin-right: 8px;
}




a.link_hover{
 font-weight: 900;
 color: rgba(9,77,120,1.00);
 text-decoration: none;
 border-bottom: rgba(9,77,120,1.00) 1px dashed;
}

a.link_hover:hover{
  background-color: rgba(9,77,120,1.00);
  color: rgba(255,255,255,1.00);
}



/* -----------------------------------------
   区切りバー
   -----------------------------------------*/
 
.bar01{
   border-bottom: rgba(0,0,0,1.00) 1px solid;
 }
 
.bar02{
   border-bottom: rgba(0,0,0,1.00) 2px dotted;
 }
 
.bar03{
   border-bottom: rgba(91,91,91,1.00) 1px dotted;
 }
   
/* -----------------------------------------
   ボーダー
   -----------------------------------------*/

.border_gray{
  border: rgba(142,142,142,1.00) 1px solid;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.border_pink{
  border: rgba(254,112,150,1.00) 2px solid;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
   box-sizing: border-box;
}

.border_white{
  border: rgba(255,255,255,1.00) 1px solid;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.border_blue{
  border: rgba(71,117,185,1.00) 1px solid;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
  box-sizing: border-box;
}


/* -----------------------------------------
   フォントサイズ
   -----------------------------------------*/

.fsize50{
	font-size:50%;
}

.fsize60{
	font-size:60%;
}

.fsize70{
	font-size:70%;
}

.fsize80{
	font-size:80%;
}

.fsize90{
	font-size:90%;
}

.fsize100{
	font-size:100%;
}

.fsize110{
	font-size:110%;
}

.fsize120{
	font-size:120%;
}

.fsize130{
	font-size:130%;
}

/* -----------------------------------------
   フォントカラー
   -----------------------------------------*/

.txt_red1{
	color:#C6002F;
}

.txt_red2{
	color:#CC5F7D;
}

.txt_pink1{
	color:rgba(254,112,150,1.00);
}

.txt_pink2{
	color:#FDD9E5;
}

.txt_pink3{
	color:rgba(255,133,172,1.00);
}

.txt_pink4{
	color:rgba(244,204,207,1.00);
}

.txt_blue1{
	color:rgba(62,129,184,1.00);
}

.txt_blue2{
	color:#09F;
}

.txt_green1{
	color:#396;
}

.txt_green2{
	color:#00A6A3;
}

.txt_green3{
	color:#7FBF39;
}

.txt_gray1{
	color:#999;
}

.txt_gray2{
	color: rgba(77,77,77,1.00);
}

.txt_Purple1{
	color:#90C;
}

.txt_orange1{
	color:#F60;
}

.txt_yellow01{
	color:rgba(251,246,190,1.00);
}

.txt_orange01{
	color:rgba(236,158,46,1.00);
}

.txt_brown{
  color: rgba(223,174,91,1.00);
}


/* -----------------------------------------
   テキスト寄せ
   -----------------------------------------*/

.txt_center{
  text-align: center;
}

.txt_right{
  text-align: right;
}

.txt_left{
  text-align: left;
}

   
/* -----------------------------------------
   イメージサイズ
   -----------------------------------------*/
.img_100 img{
  width: 100%;
  height: auto;
}

/* -----------------------------------------
   イメージオーバー
   -----------------------------------------*/

.img_over a img{
    opacity: 1.0;
    transition: opacity 0.5s;
}
.img_over a img:hover{
    opacity: 0.8;
    transition: opacity 0.5s;
}
  
/* -----------------------------------------
   TOPへ戻る
   -----------------------------------------*/

#back-top {
    position: fixed;
    bottom: 0;
    right: 50px;
		z-index:100;
}
#back-top a {
    width: 60px;
    height: 80px;
    display: block;
}



/* -----------------------------------------
   ＰＣ・スマホ表示切り替え
   -----------------------------------------*/

.style_pc{
  display: block;
}

.style_mobile{
  display: none !important;
}

#mobileHeader{
	display:none;
}


/* =============================================================================
   Flex 
   ========================================================================== */
   
.flex_wrapper{
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

   
.flex_wrapper02{
  position: relative;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.fb08{
  position: relative;
  overflow: hidden;
  width: 8%;
}
.fb10{
  position: relative;
  overflow: hidden;
  width: 10%;
}
.fb18{
  position: relative;
  overflow: hidden;
  width: 18%;
}
.fb20{
  position: relative;
  overflow: hidden;
  width: 20%;
}
.fb23{
  position: relative;
  overflow: hidden;
  width: 23%;
}
.fb24{
  position: relative;
  overflow: hidden;
  width: 24%;
}
.fb25{
  position: relative;
  overflow: hidden;
  width: 25%;
}
.fb28{
  position: relative;
  overflow: hidden;
  width: 28%;
}
.fb30{
  position: relative;
  overflow: hidden;
  width: 30%;
}
.fb33{
  position: relative;
  overflow: hidden;
  width: 33.3333%;
}
.fb32{
  position: relative;
  overflow: hidden;
  width: 32%;
}
.fb38{
  position: relative;
  overflow: hidden;
  width: 38%;
}
.fb40{
  position: relative;
  overflow: hidden;
  width: 40%;
}
.fb48{
  position: relative;
  overflow: hidden;
  width: 48%;
}
.fb49{
  position: relative;
  overflow: hidden;
  width: 49%;
}
.fb50{
  position: relative;
  overflow: hidden;
  width: 50%;
}
.fb55{
  position: relative;
  overflow: hidden;
  width: 55%;
}
.fb58{
  position: relative;
  overflow: hidden;
  width: 58%;
}
.fb60{
  position: relative;
  overflow: hidden;
  width: 60%;
}
.fb68{
  position: relative;
  overflow: hidden;
  width: 68%;
}
.fb70{
  position: relative;
  overflow: hidden;
  width: 70%;
}
.fb78{
  position: relative;
  overflow: hidden;
  width: 78%;
}
.fb80{
  position: relative;
  overflow: hidden;
  width: 80%;
}
.fb100{
  position: relative;
  overflow: hidden;
  width: 100%;
}


/* ---------------------------------------------------------------------------
   ページャー
   ---------------------------------------------------------------------------*/

.newsPaging{
    position: relative;
}

.page {
}

.page-elm {
	overflow:hidden;
}

.pager {
	text-align:center;
    font-family: source-han-serif-japanese, serif;
}

.pager span {
	margin:4px;
	padding:5px 8px;
	color:rgba(255,255,255,1.00);
	background:rgba(71,116,185,1.00);
	border:rgba(28,46,103,1.00) 1px solid;
    box-sizing: border-box;
}
.pager span:hover {
	cursor:pointer;
	background:rgba(45,67,144,1.00);
	color:rgba(255,255,255,1.00);
}

.pager span.current {
	color:#fff;
	background:rgba(28,46,103,1.00);
}
.pager span.current:hover {
	cursor:default;
}

.pager span.invalid {
	display:none;
}
.pager span.invalid:hover {
	cursor:default;
}

.pager span.ellipsis {
	color:#939191;
	background:none;
	border:none;
}
.pager span.ellipsis:hover {
	cursor:default;
}

.pager span.first,
.pager span.last,
.pager span.prev,
.pager span.next {
	background:rgba(0,136,255,1.00);
	border:rgba(28,46,103,1.00) 1px solid;
	color:rgba(255,255,255,1.00);
}

.pager span.first:hover,
.pager span.last:hover,
.pager span.prev:hover,
.pager span.next:hover {
	color:#fff;
	background:rgba(45,67,144,1.00);
}

.pageNum {
	margin:30px 0;
	text-align:center;
}


/* ----------------------------*/


.pageFilter{
  width: 100%;
  margin: auto;
}

.pageFilter li{
  float: left;
	padding-bottom:10px;
  padding: 10px 15px 10px 15px;
  margin-right: 10px;
  border: rgba(223,174,91,1.00) 1px solid;
  background-color: rgba(255,255,255,1.00);
  border-radius: 10px;
}

	.pageFilter a{
		color:rgba(0,0,0,1.00) !important;
		text-decoration:none;
	}

	.pageFilter .selected a{
    color:rgba(255,255,255,1.00) !important;
	  font-weight:900;
	}
  
	.pageFilter .selected {

    background-color: rgba(237,152,176,1.00);
	}
	
	.pageFilter a.visited{
		color:rgba(0,0,0,1.00);
		text-decoration:none;
  }



/* ==========================================================================
   記事フィルター
   ========================================================================== */

.filter_wrapper{
  position: relative;
  overflow: hidden;
  width: 100%;
}

.filter_wrapper a{
  display: block;
}

.filter_wrapper .list{
  display: block;
  float: left;
  margin-right: 15px;
  line-height: 1.8;
  font-weight: 400;
  padding: 3px 10px 3px 10px;
  background-color: rgba(255,255,255,1.00);
  border: rgba(155,155,155,1.00) 1px solid;
}

.filter_wrapper .list a{
  color: rgba(124,124,122,1.00);
  text-decoration: none;
}
.filter_wrapper .list a:visited{
  color: rgba(124,124,122,1.00);
  text-decoration: none;
}

/* =============================================================================
   メニューフィルター
   ========================================================================== */

.newsFilter li{
  margin-bottom: 15px;
}

	.newsFilter a{
    display:block;
    text-decoration: none;
    width: 100%;
    color: rgba(135,135,135,1.00);
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 110%;
    line-height: 1.4;
	}


	.newsFilter .selected {
    color: rgba(0,0,0,1.00);
	}
	
	.newsFilter li .visited{
    color: rgba(0,0,0,1.00);
	}

	.spList{
		width: 1000px;
	}
  
  
  
/* =============================================================================
   イメージフロート
   ========================================================================== */

.img_left{
  float: left;
  margin: auto 20px 20px auto;
}






/* 〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
   スマホ版
   〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓 */

@media screen and (max-width: 480px) {

/* -----------------------------------------
   ＰＣ・スマホ表示切り替え
   -----------------------------------------*/

.style_pc{
  display: none !important;
}

.style_mobile{
  display: block !important;
}

#mobileHeader{
	display:block;
	position:fixed;
	width:100%;
	height:50px;
  z-index: 999;
  top: 0;
}

.head_m{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  z-index: 300;
}

.gmenu_logo{
	width: 60%;
	margin: 40px auto 30px auto;
}


/* ==========================================================================
   デザイン基本
   ========================================================================== */

html,body{
	min-width:100%;
	max-width:100%;
  font-size: 110%;
}


img{
	width:100%;
	height:auto;
}



/* =============================================================================
   イメージフロート
   ========================================================================== */

.img_left{
  float: none;
  width: 90%;
  margin: auto auto 20px auto;
}





/* -----------------------------------------
   インデックス
   -----------------------------------------*/

h1 {
   font-size: 110%;
}

h2{
   font-size: 105%;
}

h3{
   font-size: 105%;
}


/* =============================================================================
   Flex 
   ========================================================================== */
   
.flex_wrapper{
  display:block;
}


   
.flex_wrapper02{
  display:block;
}

.fb08{
  width: 100%;
}
.fb10{
  width: 100%;
}
.fb18{
  width: 100%;
}
.fb20{
  width: 100%;
}
.fb23{
  width: 100%;
}
.fb24{
  width: 100%;
}
.fb25{
  width: 100%;
}
.fb28{
  width: 100%;
}
.fb30{
  width: 100%;
}
.fb33{
  width: 100%;
}
.fb32{
  width: 100%;
}
.fb38{
  width: 100%;
}
.fb40{
  width: 100%;
}
.fb48{
  width: 100%;
}
.fb49{
  width: 100%;
}
.fb50{
  width: 100%;
}
.fb55{
  width: 100%;
}
.fb58{
  width: 100%;
}
.fb60{
  width: 100%;
}
.fb68{
  width: 100%;
}
.fb70{
  width: 100%;
}
.fb78{
  width: 100%;
}
.fb80{
  width: 100%;
}
.fb100{
  width: 100%;
}


/* ==========================================================================
   テーブル整形
   ========================================================================== */

.tbl2{
  width: 100%;
  margin-top: 10px;
}

.tbl2 td, .tbl2 th {
  display: block;
  width: calc(100% - 20px);
  padding: 10px;
}

.tbl2 th{
  border-bottom: rgba(254,112,150,1.00) 1px dotted;
  font-weight: bold;
}



.tbl3{
  width: 100%;
  margin-top: 10px;
}

.tbl3 td, .tbl3 th {
  display: block;
  width: calc(100% - 20px);
  padding: 10px;

}

.tbl3 th{
  border-bottom: rgba(254,112,150,1.00) 1px dotted;
  font-weight: bold;
  text-align: left;
}


/* ==========================================================================
   記事フィルター
   ========================================================================== */

.filter_serect_wrapper .list{
  display: block;
  float: left;
  width: 15%;
  font-size: 90%;
  line-height: 1.8;
  margin-bottom: 10px;
  margin-right: 2%;
  text-align: center;
}

.filter_serect_wrapper .list a{
}


/* -----------------------------------------
   TOPへ戻る
   -----------------------------------------*/

#back-top {
    position: fixed;
    bottom: 0;
    right: 10px;
		z-index:100;
}
#back-top a {
    width: 60px;
    height: 80px;
    display: block;
}



}