@charset 'utf-8'; /*文字コード指定*/

/* ----- css reset(各ブラウザで指定されているスタイルを初期化)と全体設定 ----- */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, textarea, p, th, td, img {
    margin: 0; /*ボックス外側の余白(値1つは上下左右をまとめて指定)*/
    padding: 0; /*ボックス内側の余白(値1つは上下左右をまとめて指定)*/
    border: 0; /*境界線指定*/
}

html, body {
    height: 100%; /*領域の高さ指定*/
}

body {
    font-size: 75%; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    line-height: 2; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    background: #F2F2F2; /*背景指定*/
    font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro'; /*フォントの種類指定(左から優先順位)*/
    color: #333; /*文字色指定*/
    min-height: 100vh;
    margin: 0;
    padding: 0;
    justify-content: center;
    align-items: center;
}


* {
    box-sizing: border-box;
}



/* パソコンで見た時はclass名pc-onlyだけ表示 */
.pc-only{
    display: block;
}
.sp-only{
    display: none;
}

.sp-mini-only{
    display: none;
}

/* スマホで見た時はclass名sp-onlyだけ表示 */
@media screen and (max-width: 768px){
    .pc-only{
        display: none;
    }
    .sp-only{
        display: block;
    } 

    .sp-mini-only{
    display: none;
}

}  





ol, ul {
    list-style: none; /*リストマーカーの種類指定(noneはなし)*/
}

a {
    color: #12368a; /*文字色指定*/
}

a:hover {
    text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}

.color1 {
    color: #990000; /*文字色指定*/
}

/*header　ページ上の内容*/

header {
    position: fixed; /*ボックスの配置方法(fixedは固定)*/
    top: 0; /*上からの距離(positionで指定している場合に適用)*/
    left: 0; /*左からの距離(positionで指定している場合に適用)*/
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 70px; /*領域の高さ指定*/
    background: #fff; /*背景指定*/
    z-index: 1000; /*ボックス重なり順序指定*/
    border-bottom:1px solid #ddd;
}

/*左上のロゴ*/

h1 {
    padding-left: 30px;
    font-size: 2.6em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    line-height: 70px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    height: 70px; /*領域の高さ指定*/
    background: linear-gradient(#0097ba,#2c9a7a);
    color: #ffffff;
}

h1 a {
    
    text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
    color: #ffffff;
}

h1 a:hover {
    /*時間的変化指定*/
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; /*ここまで時間的変化指定*/
    /*透明度設定*/
    opacity: 0.6;
    filter: alpha(opacity=60);
    -moz-opacity: 0.6; /*ここまで透明度設定*/
}

@media (max-width: 768px) {
h1 {
    padding-left: 30px;
    font-size: 1em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    line-height: 70px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    height: 70px; /*領域の高さ指定*/
}
}
/*右上の内容*/

.terms {
    position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
    top: 0; /*上からの距離(positionで指定している場合に適用)*/
    right: 0; /*右からの距離(positionで指定している場合に適用)*/
}

.contact {
    position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
    top: 0; /*上からの距離(positionで指定している場合に適用)*/
    right: 0px; /*右からの距離(positionで指定している場合に適用)*/
}

.info {
    font-size: 1em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    width: 80px; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 70px; /*領域の高さ指定*/
    text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
}

.info ul {
    padding: 12px 0; /*ボックス内側の余白*/
}

.info li {
    padding: 0 0 7px 0; /*ボックス内側の余白*/
    font-weight: 700;
    color: #fff;
    line-height: 1; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}

.info a {
    color: #333; /*文字色指定*/
    text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}

.info a:hover {
    /*時間的変化指定*/
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; /*ここまで時間的変化指定*/
    /*透明度設定*/
    opacity: 0.6;
    filter: alpha(opacity=60);
    -moz-opacity: 0.6; /*ここまで透明度設定*/
}

.copyright {
    font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    line-height: 15px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    position: fixed; /*ボックスの配置方法(fixedは固定)*/
    bottom: 20px; /*下からの距離(positionで指定している場合に適用)*/
    left: 0; /*左からの距離(positionで指定している場合に適用)*/
}

/*レイアウト設定*/

.wrapper {
    float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    margin-top: 70px; /*ボックス外側上の余白*/
    margin-left: -200px; /*ボックス外側左の余白*/
}

/*２段組*/
.columns2 {
    display: flex;
    margin: 0px auto;
}

.main, .side {
    padding: 20px;
}

.main {
    width: 60%;
    margin-right: 20px;
}

.side {
    width: 40%;
}

.side img{
    max-width: 100%;
}
/*２段組ここまで*/

.content {
    margin-left: 230px; /*ボックス外側左の余白*/
}

@media screen and (max-width: 768px) {
   .columns2 {
        flex-direction: column;
    }
    .main, .side {
        box-sizing: border-box;
        width: 100%;
        margin: 0;
    }
}

.columns2_50 {
    display: flex;
    margin: 0px auto;
}

.main_50, .side_50 {
    padding: 20px;
}

.main_50 {
    width: 50%;
    margin-right: 20px;
}

.side_50 {
    width: 50%;
}

.side_50 img{
    max-width: 100%;
}
/*２段組ここまで*/

.content {
    margin-left: 230px; /*ボックス外側左の余白*/
}

@media screen and (max-width: 768px) {
   .columns2_50 {
        flex-direction: column;
    }
    .main_50, .side_50 {
        box-sizing: border-box;
        width: 100%;
        margin: 0;
    }
}


/*メインの内容*/

article {
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    margin: 20px 0 50px 0; /*ボックス外側の余白*/
}

section {
    width: 80%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    margin: 0 auto; /*ボックス外側の余白*/
    padding: 20px; /*ボックス内側の余白*/
    background: #fff; /*背景指定*/
}

article h2 {
    font-size: 2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    font-weight: normal; /*フォントの太さ指定(normalは標準)*/
    line-height: 3; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    width: 80%;
    margin: 10px auto 0 auto;
    text-align: left;
}

article h3 {
    font-size: 1.5em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    font-weight: normal; /*フォントの太さ指定(normalは標準)*/
    margin-bottom: 10px; /*ボックス外側下の余白*/
}

article h4 {
    font-size: 1.2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    font-weight: normal; /*フォントの太さ指定(normalは標準)*/
    margin-bottom: 10px; /*ボックス外側下の余白*/
}

article li, p {
    font-size: 1.2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    margin-left: 20px; /*ボックス外側左の余白*/
}
.terms_content li li {
    font-size: 100%; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}

/* ----- テーブル設定 ----- */

.ta {
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    border-collapse: collapse; /*境界線の表示指定(collapseは重ねて表示)*/
    margin: 0 auto; /*ボックス外側の余白(値2つは左から上下,左右の値(左右autoで中央配置))*/
}

.ta th, td {
    border: none; /*境界線の一括指定(noneはなし)*/
    padding: 0 0 10px 10px; /*ボックス内側の余白*/
    color: #333; /*文字色指定*/
    font-size: 1.3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    font-weight: normal; /*フォントの太さ指定(normalは標準)*/
    text-align: left; /*行の水平方向の揃え方(leftは左寄せ)*/
}

/* ----- フォーム設定 ----- */

.clearfix:after {
    clear: both; /*floatの回り込み解除*/
    content: "."; /*要素の直後に文字列や画像などのコンテンツを挿入*/
    display: block; /*要素の表示指定（blockはブロックボックス生成）*/
    height: 0; /*領域の高さ指定*/
    visibility: hidden; /*ボックスの表示（visible）、非表示（hidden）指定*/
}

.form dl {
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    padding: 15px 0; /*ボックス内側の余白*/
    border-bottom: 1px solid #dcdcdc; /*境界下線指定*/
    font-size: 1.3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}

.form dl dt {
    width: 32%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    float: left; /*要素を左か右に寄せて配置(leftは左に寄せる)*/
    padding: 5px 10px 10px 10px; /*ボックス内側の余白*/
}

.form dl dd {
    width: 65%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
}

.form dl dd textarea, .form dl dd .txt {
    background: #fff; /*背景指定*/
    padding: 0 10px; /*ボックス内側の余白*/
    border: 1px solid #dcdcdc; /*境界線指定*/
    /*角丸指定*/
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px; /*ここまで角丸指定*/
    width: 50%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 40px; /*領域の高さ指定*/
    line-height: 40px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}

.form dl dd textarea {
    width: 90% !important; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 100%; /*領域の高さ指定*/
}

.form dd .ina {
    ime-mode: disabled; /*テキスト入力時のIMEの状態指定(disabledは英数字入力モード)*/
}

.chra li {
    position: relative; /*ボックスの配置方法(relativeは相対位置配置)*/
    padding-left: 30px; /*ボックス内側左の余白*/
    line-height: 30px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
    font-size: 100%; /* フォントサイズ指定(%はブラウザに設定した標準文字サイズ(通常16px)に対する値)*/
}

.chra li div {
    position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
    top: 5px; /*上からの距離(positionで指定している場合に適用)*/
    left: 0; /*左からの距離(positionで指定している場合に適用)*/
}

.ctSelect {
    background: url(../images/arrow.png) right center no-repeat; /*背景指定*/
    background-color: #fff; /*背景指定*/
    padding: 0 10px; /*ボックス内側の余白*/
    border: 1px solid #dcdcdc; /*境界線指定*/
    /*角丸指定*/
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px; /*ここまで角丸指定*/
    width: 50%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 40px; /*領域の高さ指定*/
    line-height: 40px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}

.kakunin {
    width: 150px; /*幅指定(100%は画面横幅いっぱいに表示)*/
    margin: 20px auto; /*ボックス外側の余白*/
}

.btn_submit {
    width: 150px; /*幅指定(100%は画面横幅いっぱいに表示)*/
    padding: 10px 0 13px 0; /*ボックス内側の余白*/
    /*背景グラデーション指定*/
    background-color: #4070f4;
    color: #fff; /*文字色指定*/
    text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
    font-size: 100%; /* フォントサイズ指定(%はブラウザに設定した標準文字サイズ(通常16px)に対する値)*/
    font-weight: bold; /*フォントの太さ指定(normalは標準)*/
}

.btn_submit:hover {
    /*透明度設定*/
    opacity: 0.8;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8; /*ここまで透明度設定*/
    /*時間的変化指定*/
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.s;
    transition: 0.5s; /*ここまで時間的変化指定*/
    cursor: pointer; /*マウスカーソルの形状指定(pointerはリンクカーソル)*/
}

.required {
    color: #ff0000; /*文字色指定*/
}

/*map設定*/

.gmap {
    position: relative; /*ボックスの配置方法(relativeは相対位置配置)*/
    padding-bottom: 56.25%; /*ボックス内側下の余白*/
    padding-top: 30px; /*ボックス内側上の余白*/
    height: 0; /*領域の高さ指定*/
    overflow: hidden; /*ボックスのはみ出た部分の表示指定(hiddenは非表示)*/
}

.gmap iframe {
    position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
    top: 0; /*上からの距離(positionで指定している場合に適用)*/
    left: 0; /*左からの距離(positionで指定している場合に適用)*/
    width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 100%; /*領域の高さ指定*/
}

/*無限スクロール設定*/

.scroll_area {
	margin: 0 auto; /*ボックス外側の余白*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}

#infscr-loading {
    z-index: 100; /*ボックス重なり順序指定*/
    position: fixed; /*ボックスの配置方法(fixedは固定)*/
    left: 50%; /*左からの距離(positionで指定している場合に適用)*/
    bottom: 20px; /*下からの距離(positionで指定している場合に適用)*/
}

/*ページトップに戻るアイコン*/

.pagetop:hover {
    /*時間的変化指定*/
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; /*ここまで時間的変化指定*/
    color: #000; /*文字色指定*/
    /*透明度設定*/
    opacity: 0.6;
    filter: alpha(opacity=60);
    -moz-opacity: 0.6; /*ここまで透明度設定*/
}

/*レスポンシブ設定*/

@media screen and (max-width: 768px) {
h3, p, ol, li, th, td, dl {
	font-size: 1em !important; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
header {
	height: 50px; /*領域の高さ指定*/
}
h1 {
	font-size: 1em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 50px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	height: 50px; /*領域の高さ指定*/
}
article h2 {
	font-size: 1.2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/

}
.info {
	font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	width: 80px; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 50px; /*領域の高さ指定*/
}
.info ul {
	padding: 5px 0; /*ボックス内側の余白*/
}
.wrapper {
	margin: 50px 0 0 0; /*ボックス外側の余白*/
}
.content {
	margin: 0; /*ボックス外側の余白*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
section {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.form dl {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 0; /*ボックス内側の余白*/
	border: none; /*境界線の一括指定(noneはなし)*/
}
.form dl dt {
	float: none; /*要素を左か右に寄せて配置(noneはなし)*/
	position: static; /*ボックスの配置方法(staticは指定なし)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.form dl dd {
	float: none; /*要素を左か右に寄せて配置(noneはなし)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin-left: 10px; /*ボックス外側左の余白*/
}
.form dl dd .txt, .ctSelect {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 30px; /*領域の高さ指定*/
	line-height: 30px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}
.copyright {
    /*透明度設定*/
    opacity: 0.5;
    filter: alpha(opacity=50);
    -moz-opacity: 0.5; /*ここまで透明度設定*/
}

.copyright {
    display: none;
}

}


 @media screen and (max-width: 330px){
h1 {
    font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
.info {
    font-size: 0.8em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    width: 50px; /*幅指定(100%は画面横幅いっぱいに表示)*/
    height: 50px; /*領域の高さ指定*/
    padding-right: 5px;
}

} 


dd{
    margin-bottom: 20px;
    font-size: 1.2em;
}

.event {
  box-sizing: border-box;
  display: inline-block;
  width: 130px;
  margin-right: 20px;
  padding:1px 0;
  background-color: #4070f4;
  color: #fff;
  line-height: 1.7;
  text-align: center;
}
.news {
  box-sizing: border-box;
  display: inline-block;
  width: 130px;
  margin-right: 20px;
  padding:1px 0;
  background-color: #20c997;
  color: #fff;
  line-height: 1.7;
  text-align: center;
}
.btn-more{
  display: inline-block;
  max-width: 180px;
  text-align: left;
   border: 1px solid #707070;
  color: #707070;
  text-decoration: none;
  padding: 0px 10px;
  transition: .4s;
  margin:8px 0 10px 5px;
  font-size: 0.8rem;
}

.btn-more:hover {
  background-color: #707070;
  border-color: #707070;
  color: #FFF;
}

.btn_tus {
  text-align: center;
  padding-top: 10px;
}

/* ここから下がボタンのCSS　*/
.btn-border {
  display: inline-block;
  max-width: 180px;
  text-align: left;
  border: 2px solid #000;
  font-size: 1em;
  color: #000;
  text-decoration: none;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 2px;
  transition: .4s;
}

.btn-border:hover {
  background-color: #000;
  border-color: #cbe585;
  color: #FFF;
}
@media (max-width: 768px) {
.info li {
    padding: 0 0 1px 0; /*ボックス内側の余白*/
    line-height: 1; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}

dd{
    margin-bottom: 20px;
    font-size: 1em;
}
time {
font-size: 0.8em;
}

}
.mini{
    font-size: 12px;
    clear: both;
}
.fr{
    float: right;
}





#member_HEXAGON table{
width: 100%;
border-collapse: collapse;
border: none;
}
#member_HEXAGON table tr th,
#member_HEXAGON table tr td{
padding: 0.5em 0.3em;
font-size: 1rem;
text-align: left;
vertical-align: top;
border: none;
border-bottom: 1px solid #ccc;
}


/*第一案のテーブルの背景*/

#member_HEXAGON2 table{
width: 100%;
border-collapse: collapse;
border: solid #CCC;
border-width: 1px;
}
#member_HEXAGON2 table tr th,
#member_HEXAGON2 table tr td{
padding: 0.5em;
font-size: 1rem;
text-align: left;
vertical-align: top;
border: solid #CCC;
border-width: 1px;
}



#member_HEXAGON table tr th{
width: 20%;
background: #ffffff;
}
@media screen and (max-width:768px){

#member_HEXAGON table{
width: 100%;
border-collapse: collapse;
border: none;
}
#member_HEXAGON table tr th,
#member_HEXAGON table tr td{
padding: 0em;
font-size: 0.9rem;
text-align: left;
vertical-align: top;
border: none;
border-bottom: 1px solid #ccc;
}

}

#publication_year table{
width: 100%;
border-collapse: collapse;
border: none;
}
#publication_year table tr th{
background-color: #eee;
padding: 0.1em 0.5em;
font-size: 1rem;
text-align: left;
vertical-align: top;
border: none;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}

#publication table{
width: 100%;
border-collapse: collapse;
border: none;
border-bottom: 1px solid #ccc;
}
#publication table tr th{
padding: 0.5em 0.5em;
font-size: 1rem;
text-align: left;
vertical-align: top;
border: none;
}
#publication table tr td{
padding: 0.5em 0.3em;
font-size: 1rem;
text-align: left;
vertical-align: top;
border: none;
}

.photo{
    max-width: 100%;
    margin: 20px 0 0 0;
}



.box26 {
    position: relative;
    margin: 2em 2em;
    padding: 0.5em 1em;
    border: solid 3px #4070f4;
    border-radius: 8px;
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 1rem;
    background: #FFF;
    color: #4070f4;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
    color: #333;
    font-size: 0.8rem;
}

