/* ベース-フォント */
body {
  margin: 0;

  /* フォントの種類を指定 */
  font-family: 'Noto Sans JP', sans-serif;
    font-weight: normal;
  /* 字間(プロポーショナルメトリクス)を指定 */
  font-feature-settings: "palt";
  color: #333;
}

.serif { 
    /* 見出しに使用（明朝体） */
    font-family: 'Noto Serif JP', serif;
    font-weight: 500;
    line-height: 1.125;
}

.cap {
    font-size: 0.6em;
}


/* ロゴ部分 */
.logo {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 1em auto;
}

.logo > img {
    max-width: 7vw;
    max-height: auto;
    margin-right: 0.125em;
}

.logo > h1 {
    font-size: 4vmax;
    text-align: left;
}

.logo-sub {
    font-size: 2.25vmax;
}


/* ベース-背景 */
.container {
    margin: 0 auto;
    width: 100%;
    height: 100vh;
    background-image: linear-gradient(rgba(255,255,255,0.82)60%,rgba(125,125,125,0.80) ) ,url("../img/IMG_6216.jpg");
    background-position: center left;
    background-repeat: no-repeat;
    background-size: cover;
}


/* ヘッダー */
header {
    display: flex;
    align-items: center;
    justify-content: right;
    flex-wrap: wrap;
    height: 5vh;
    background-color: #001E62;
    font-size: 0.8em;
    color: #fff;
}

header div {
    margin-right: 2em;
}

header a {
    color: #FFF;
    text-decoration: none;
  }

header a:hover {
    color: #FFF;
    text-decoration: underline;
  }

/* ヘッダーリンク（CSSで三角マーク） */
header a.lnkArrow {
    position: relative;
    padding-left: 2em;
}

header a.lnkArrow::before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-color: transparent transparent transparent #ffffff;
    display: inline-block;
    position: absolute;
    top: 25%;
    left: 1em;
}


/* メインコンテンツ */
main {
    width: 100vw;
    height: 80vh;
    margin: 0 0;
}

main.top-con {
    padding-top: 5%;
    width: 80vw;
    margin: 0 auto;
}

/* リンクリスト */
.btnlnk {
    display: flex;
    align-items: top;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
    margin: 0 auto;
  }
  
.btnlnk section {
    flex-basis: 50%;
    padding: 0 1em;
}

.btnlnk section:last-child {
    padding-right: 2em;
}

.btnlnk section dt {
    margin: 1em auto;
}



/* リンクボタン */
a.btn {
    display: block;
    margin: 0 1em;
    padding: 0.25em 1.25em;
    border-radius: 4px;
    text-decoration: none;
    background-color: #001E62;
    color: #FFF;
    border: 1px #001E62 solid;
}

a.btn:hover {
    background-color: #FFF;
    color: #C63527;
    border: 1px #C63527 solid;
    font-weight: 500;
}


/* フッター */
footer {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    height: 15vh;
    background-color: #001E62;
    color: #fff;
}

footer dl {
    text-align: center;
}

footer dl > dd {
    padding-top: 0.5em;
    font-size: 0.8em;
}

/* 汎用設定 */
/* clear */
.clear {
    clear: both;
}

/* center */
.center {
    text-align: center;
    margin: 0 auto;
}


/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	.btnlnk {
    justify-content: center;
  }
	
	
  .btnlnk section {
    flex-basis: 90%;
    padding: 0 1em;
	}
	
	.btnlnk section:last-child {
    padding-right: 0;
	}
}