@charset "UTF-8";
/*
Theme Name: 基本テンプレート
Description: bassテンプレート
*/


/* -------------------------- */
/* 基本設定 */
/* -------------------------- */

* {
  -webkit-box-sizing: border-box;
    box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html,
body {
	width: 100%;
	height: 100%;	
	overflow-x: hidden;/*余計な余白が出た場合隠してしまう*/
	font-family :"ヒラギノ角ゴ ProN",sans-serif; 
}



header,
footer {
  width: 100%;
}

a {
  text-decoration: none;
}

li {
  list-style: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0;
}

p {
  font-size:16px;	
  text-align: justify;
  text-justify: inter-ideograph;
	line-height:25px;
}

/* -------------------------- */
/* 画像透過 */
/* -------------------------- */
a img:hover {
  transition: 1.0s;
  opacity: 0.8;
}

/* -------------------------- */
/* レスポンシブ対応 */
/* -------------------------- */
.sp {
  display: none;
}
@media screen and (max-width: 1024px) {
  .pc {
      display: none!important;
  }
  .sp {
      display: block;
  }
}

/* telリンク（PC無効） */
a[href^="tel:"] {
  pointer-events: none;
}
	@media screen and (max-width: 1024px) {
  a[href^="tel:"] {
      pointer-events: auto;
  }
}

/* -------------------------- */
/* copy rights */
/* -------------------------- */
.copy {
	font-size: 80%;
	text-align: center;
  padding: 40px 0 0px 0;

	height:10px;
	color:#fff;
}


/* -------------------------- */
/* 余白排除 */
/* -------------------------- */
#wrap {
  width: 100%;
  overflow: hidden;
}


/* -------------------------- */
/* page-top */
/* -------------------------- */
#page-top {
  display: none;
  position: fixed;
  bottom: 50px;
  right: 30px;
  width: 50px;
  height: auto;
  z-index: 99;
  cursor: pointer;
}


/* -------------------------- */
/* efect */
/* -------------------------- */
.
.fadein
 {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1500ms;
}

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

/*動きのきっかけの起点となるクラス名 はじめは非表示に*/
.fadeInUpTrigger,
.fadeInDownTrigger,
.fadeInUpTriggerOnce{
  opacity: 1;
  transition : all 1500ms;
}



/*////////////////////
  共通レイアウト
///////////////////*/
._flex {
  display: -webkit-box;
  display: -ms-flexbox;
    display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
   justify-content: space-between;

}

/* スペース */
._space {
    justify-content: space-between;
}

/* 左右センター */
._center_center {
    justify-content: center;
}

/* 上下センター */
._center{
		align-items: center;
}

/* 行送り */
._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
    display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
    flex-direction: row;
  -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  width: 100%;
}

/*　中央寄せ */
._flex_center {
  display: -webkit-box;
    display: -ms-flexbox;
      display: flex;
    -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*　上下左右中央寄せ */
._flex_center_center {
	align-content:center;
}

/*　上下中央寄せ */
._flex_row_center {
	align-content:center;
}

/* 逆配置 */
._row {
  display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}

@media screen and (max-width: 768px) {
  ._flex, ._row {
    display: block;
    width: 100%;
  }

  ._wrap {
    display: -webkit-box;
    display: -ms-flexbox;
      display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
      flex-direction: row;
    -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    width: 100%;
  }
}


/* テキスト中央 */
._center {
  text-align: center!important;
}


/* テキスト中揃え解除 */
._justify {
  text-align: justify!important;
    text-justify: inter-ideograph!important;
}


/* -------------------------- */
/* 投稿ページ */
/* -------------------------- */
.article img {
  width: auto;
  height: auto;
}


/* -------------------------- */
/* map */
/* -------------------------- */
.map {
  position: relative;
  width: 100%;
  height: 500px;
  margin: 0;
  overflow: hidden;
}
.map iframe,
.map object,
.map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* -------------------------- */
/* コンテンツ */
/* -------------------------- */
.content_box {
	width: 1200px;
	margin: auto;
}

@media screen and (max-width: 1024px){
  .content_box {
    width: 100%;
    margin: 0;
    padding: 5%;
  }
}
@media screen and (max-width: 768px){
  .content_box {
    width: 100%;
    margin: 0;
    padding: 5%;
  }
}

/* -------------------------- */
/* clearfix */
/* -------------------------- */
.clear{
  zoom: 1;
}
.clear:after {
  content: "";
  display: block;
  clear: both;
}

/* -------------------------- */
/* page-top */
/* -------------------------- */

#page-top {
    position: fixed;
    bottom: 20px;
    right: 10px;
    font-size: 77%;
    z-index: 1;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}


#page-top a {
    background:#888 ;
    text-decoration: none;
    color: #fff;
    width: 75px;
    padding: 25px 0;
    font-size: 2.0em;
    text-align: center;
    display: block;
    border-radius: 300px;
    text-decoration: none;
}
#page-top a:hover {
    text-decoration: none;
    background: #888;
}
/* -------------------------- */
/* 寄せ・フロート */
/* -------------------------- */
.center{
  text-align: center;
}

.center2{
	margin-left:auto;
	margin-right:auto;
}

.left{
  text-align: left;
}

.right{
  text-align: right;
}


.f-left{
  float: left;
}

.f-right{
  float: right;
}

/* -------------------------- */
/* margin・padding */
/* -------------------------- */


.top10{
margin-top:10px;
}

.top10p{
padding-top:10px;
}

.top20{
margin-top:20px;
}

.top20p{
padding-top:20px;
}

.top30{
margin-top:30px;
}

.top30p{
padding-top:30px;
}

.top40{
margin-top:40px;
}

.top40p{
padding-top:40px;
}

.top50{
margin-top:50px;
}

.top50p{
padding-top:50px;
}

.top60{
margin-top:60px;
}

.top60p{
padding-top:60px;
}

.top70{
margin-top:70px;
}

.top70p{
padding-top:70px;
}

.top80{
margin-top:80px;
}

.top80p{
padding-top:80px;
}

.top90{
margin-top:90px;
}

.top90p{
padding-top:90px;
}
.top100{
margin-top:100px;
}

.top100p{
padding-top:100px;
}

/*margin-bottom*/

.bottom10{
margin-bottom:10px;
}
.bottom10p{
padding-bottom:10px;
}

.bottom20{
margin-bottom:20px;
}
.bottom20p{
padding-bottom:20px;
}

.bottom30{
margin-bottom:30px;
}
.bottom30p{
padding-bottom:30px;
}

.bottom40{
margin-bottom:40px;
}
.bottom40p{
padding-bottom:40px;
}

.bottom50{
margin-bottom:50px;
}
.bottom50p{
padding-bottom:50px;
}

.bottom60{
margin-bottom:60px;
}
.bottom60p{
padding-bottom:60px;
}

.bottom70{
margin-bottom:70px;
}
.bottom70p{
padding-bottom:70px;
}

.bottom80{
margin-bottom:80px;
}
.bottom80p{
padding-bottom:80px;
}

.bottom90{
margin-bottom:90px;
}
.bottom90p{
padding-bottom:90px;
}

.bottom100{
margin-bottom:100px;
}
.bottom100p{
padding-bottom:100px;
}

/*right*/
.right10{
margin-right:10px;
}
.right10p{
padding-right:10px;
}

.right20{
margin-right:20px;
}
.right20p{
padding-right:20px;
}

.right30{
margin-right:30px;
}
.right30p{
padding-right:30px;
}

.right40{
margin-right:40px;
}
.right40p{
padding-right:40px;
}

.right50{
margin-right:50px;
}
.right50p{
padding-right:50px;
}

.right60{
margin-right:60px;
}
.right60p{
padding-right:60px;
}

.right70{
margin-right:70px;
}
.right70p{
padding-right:70px;
}

.right80{
margin-right:80px;
}
.right80p{
padding-right:80px;
}

.right90{
margin-right:90px;
}
.right90p{
padding-right:90px;
}

.right100{
margin-right:100px;
}
.right100p{
padding-right:100px;
}

/*left*/
.left10{
margin-left:10px;
}
.left10p{
padding-left:10px;
}

.left20{
margin-left:20px;
}
.left20p{
padding-left:20px;
}

.left30{
margin-left:30px;
}
.left30p{
padding-left:30px;
}

.left40{
margin-left:40px;
}
.left40p{
padding-left:40px;
}

.left50{
margin-left:50px;
}
.left50p{
padding-left:50px;
}

.left60{
margin-left:60px;
}
.left60p{
padding-left:60px;
}

.left70{
margin-left:70px;
}
.left70p{
padding-left:70px;
}

.left80{
margin-left:80px;
}
.left80p{
padding-left:80px;
}

.left90{
margin-left:90px;
}
.left90p{
padding-left:90px;
}

.left100{
margin-left:100px;
}
.left100p{
padding-left:100px;
}




/* -------------------------- */
/* font-style */
/* -------------------------- */
.bold {
  font-weight: bold;
}

/*color*/

.kuro{
  color: #000;
}

.white{
  color: #fff;
}

.orange{
  color: #cc5a24;
  font-weight: bold;
}

.red{
  color: #FF0000;
}

.gray{
  color: #efefef;
}

.small {
  font-size:0.9em;
}

/*font size*/
.f-2{
font-size:2em;
}

.f-15{
font-size:1.5em;
}

.f-13{
font-size:1.3em;
}


/* -------------------------- */
/* background-color */
/* -------------------------- */
.bg_white{
  background: #fff;
}

.bg_navy{
  background: #273944;
}


/* -------------------------- */
/* border-box */
/* -------------------------- */
.borderbox {
  border: 3px solid #293A45;
  background: #fff;
  padding: 30px;
}

.borderbox2 {
  background: #fff;
 padding: 30px;
}


/*ボタン*/

.button {
  display: inline-block;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  font-size:1em;
  padding:0 10px;
  /*border-radius: 5px;*/
  margin-right:10px;
  margin-top:10px;
  max-width: 320px;
  min-width:200px;	
}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button {
  background-color: #000;
  color: #fff;
  border:2px solid #273944;
}
.button a{
  background-color: #ff0;
  color: #fff;
}

.button a:hover  {
  background-color: #888;
  color: #fff;
}

@media screen and (max-width: 768px) {
.button {
  min-width:150px;	
	float:right;
}
}





.button_s {
  display: inline-block;
  height: 40px;
  text-align: left;
  text-decoration: none;
  line-height: 40px;
  outline: none;
  font-size:1em;
  padding:0 20px;
  margin-right:10px;
  margin-top:10px;
  border:1px solid;
}



@media screen and (max-width: 768px) {
.button_s {
  display: inline-block;
  height: 40px;
  text-align: left;
  text-decoration: none;
  line-height: 40px;
  outline: none;
  font-size:1em;
  padding:0 10px;
  margin-top:10px;
  border:1px solid;
}
}


.button_s::before,
.button_s::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button_s,
.button_s::before,
.button_s::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button_s {
	background-color: #255FA4;
  color: #fff;
	font-size:12px;
}


.button_s:hover {
  background-color: #273944;
  color: #fff;
}


.button_maru a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding: 1em 2em;
	width: 100%;
	min-width:150px;	
	max-width:320px;	
	color: #333;
	font-size: 14px;
	font-weight: 700;
	background-color: #255FA4;
	color:#fff;	
	border-radius: 50vh;
}

.button_maru a::after {
	content: '';
	width: 5px;
	height: 5px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
}

.button_maru a:hover {
	text-decoration: none;
	opacity:0.5;
}

/* -------------------------- */
/* table */
/* -------------------------- */

table{
width: 100%;
border-collapse: collapse; 
text-align: left;
}


tr{
padding:10px 20px;
vertical-align: top;
background-color: #fff;
border:1px solid #E0E1E1; 
}



td{
padding:10px 20px;
background-color: #fff;
border:1px solid #E0E1E1;
min-width: 80px;
}



/* -------------------------- */
/* line*/
/* -------------------------- */

.line1{
  width:100%;
  display:block;
  border-top:1px solid #ccc;
}

.line2{
  width:100%;
  height:3px;
  background: url(../image/line2.png) repeat-x;
}



/* -------------------------- */
/* main-image*/
/* -------------------------- */

.banner img {
    width:100%;
    max-width: 100%;
    height:auto;
    min-height: 100px;
}





