@charset "UTF-8";

body {
    font-family: "Helvetica Neue","Helvetica","YuGothic Medium","游ゴシック","YuGothic",
    "ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    color: #202124;
    display: block;
    margin: 8px;
    line-height: 1.8;
}

/* リンクの色 */
a {
    color: #1a73e8;
}
a :visited {
    color: #1a73e8;
}
.container a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    transition: .4s;
}
.container a:hover {
    color: #2C313B;
}
.container a:hover img {
    opacity: 0.8;
}

@media screen and (min-width: 660px) { /*ウィンドウ幅が660px以上の場合に適用*/
}
@media screen and (max-width: 480px) { /*ウィンドウ幅が480px以下の場合に適用*/
}

header {
    background-color: #fff;
}

.header-container {
    max-width: 100%;
    width: 660px;
    margin: 0 auto;
    background-color: #fff;
}

.container {
    max-width: 100%;
    width: 660px;
    margin: 0 auto;
}

.logo {
    color: #2C313B;
    float: left;
}

.date {
    color: #2C313B;
    font-weight: bold;
    font-size: 2em;
    float: right;
    margin: 20px 0 0 0;
}

.cf::after{
    clear: both;
    display: block;
    content:'';
}

footer {
    max-width: 100%;
    width: 660px;
    margin: 56px auto;
    background-color: #fff;
}

.footer-nav li {
    margin: 0 auto;
    display: inline-block;
}

.footer-nav a {
    font-weight: bold;
    color: #2C313B;
    margin: 0 8px;
}

/* メモ imgのmarginを指定すると国土地理院マップのポイントがずれるので注意*/
img {
    max-width: 100%;
    height: auto;
} 

.awesome {
    color: #545454;
}

.share {
    margin: 32px 0;
    text-align: center;
}

.btn-social {
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    text-decoration: none;
    color: #FFF;
    width: 50px;
    height: 50px;
    line-height: 30px;
    padding: 5px;
    font-size: 22px;
    border-radius: 50%;
    text-align: center;
    /* font-weight: bold; */
    box-shadow: inset 0 2px 0px rgba(255, 255, 255, 0.25), inset 0 -2px 0px rgba(0, 0, 0, 0.18);
    transition: .2s;
}
.btn-social a {
    color: #FFF;
}
.btn-social .fab {
    line-height: 30px;
    color: #FFF;  /* hover時にfont awesomeを白に */
}
.btn-social:hover {
    box-shadow: none;
}
.btn-social--twitter {
    background: #1da1f3;
    border: solid 5px #1da1f3;
}
.btn-social--facebook {
    background: #3b75d4;
    border: solid 5px #3b75d4;
}
.btn-social--line {
    background: #06c755;
    border: solid 5px #06c755;
}

.share-title{
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    text-decoration: none;
    font-size: 12.3px;
    color: #2C313B;
    width: 50px;
    height: 49px;
    line-height: 23px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    vertical-align: top;
    letter-spacing: 2px;
}

.twitter a {
    text-decoration: none;
    display: block;
    text-align: center;
    font-size: 14px;
    background: #00acee;
    border-radius: 4px;
    padding: 12px;
    margin: 20px 0;
    color: #fff; 
}
.twitter a:hover {
    background: #00acee;
    opacity: 0.8;
    color: #fff
}

.facebook a {
    text-decoration: none;
    display: block;
    text-align: center;
    font-size: 14px;
    background: #3b5998;
    border-radius: 4px;
    padding: 12px;
    margin: 20px 0;
    color: #fff; 
}
.facebook a:hover {
    background: #3b5998;
    opacity: 0.8;
    color: #fff
}

.line a {
    text-decoration: none;
    display: block;
    text-align: center;
    font-size: 14px;
    background: #06c755;
    border-radius: 4px;
    padding: 12px;
    margin: 20px 0;
    color: #fff; 
}
.line a:hover {
    background: #06c755;
    opacity: 0.8;
    color: #fff
}

table {
	/* font-size:1.2em; */
	width: 100%;
    table-layout: fixed;
    margin: 12px auto;
}
th, td {
    border: 1px solid #eee;
    padding: 4px 8px;
    font-weight: normal;
}
th.width75 {
    width: 75%;
}
th.width50 {
    width: 50%;
}
th.width40 {
    width: 40%;
}
th.width30 {
    width: 30%;
}
th.width25 {
    width: 25%;
}
th.width22 {
    width: 22%;
}
th.width20 {
    width: 20%;
}
th.width12 {
    width: 12%;
}
th.width10 {
    width: 10%;
}
td.width75 {
    width: 75%;
}
td.width50 {
    width: 50%;
}
td.width40 {
    width: 40%;
}
td.width30 {
    width: 30%;
}
td.width25 {
    width: 25%;
}
td.width22 {
    width: 22%;
}
td.width20 {
    width: 20%;
}
td.width12 {
    width: 12%;
}
td.width10 {
    width: 10%;
}

.lakes-table tr:nth-child(odd) td {
    background-color: #E0E3ED;
}
.lakes-table tr:nth-child(even) td {
    background-color: #fff;
}
/* .lakes {
    text-align:center;
} */

/* トップに戻るボタン */
.page_top {
    width: 40px;
    height: 40px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    background: #2C313B;
    opacity: 0.6;
    border-radius: 50%;
}

/* トップに戻るボタン Font Awesome */
.page_top::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f106';
    font-size: 26px;
    color: #ffffff;
    position: absolute;
    width: 30px;
    height: 46px;
    top: -5px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}

/* トップに戻るボタンの動きをスムーズに */
html {
    scroll-behavior: smooth;
}

.breadcrumb {
    margin: 0;
    padding: 0;
    list-style: none;
}
  
.breadcrumb li {
    display: inline;/*横に並ぶように*/
    list-style: none;
}
  
.breadcrumb li:after {/* >を表示*/
    content: '>';
    padding: 0 0.2em;
    color: #555;
}
  
.breadcrumb li:last-child:after {
    content: '';
}
  
.breadcrumb li a {
    text-decoration: none;
    color: #1a73e8;
}

.reference {
    font-size:0.75em;
}

.banner {
    margin: 28px 0;
}

.adsense {
    margin: 28px 0;
}

h2 {
    position: relative;
    padding: 0.3em;
    margin: 1.5em 0 0.2em 0;
    font-size: 1.3em;
    color: #2C313B;
}

h2 .fas {
    color: #2C313B;
}

h2 .fab {
    color: #2C313B;
}

.description {
    background-color: #d9e5eb;
    padding: 3%;
    line-height: 1.8;
}

/* お問い合わせフォーム */

input {
    border: none;
    border-bottom: 1px solid #797979;
    font-size: 1.2em;
    width: 100%;
    padding: 8px 0;
    margin: 24px 0;
}

.form-submit {
    text-decoration: none;
    display: block;
    font-size: 14px;
    width: 100%;
    background-color: #ffa035;
    border-radius: 4px;
    color: #fff;
    padding: 12px;
    border: 0;
    margin: 20px 0;
}
.form-submit:hover {
    opacity: 0.8;
}

.required {
    color: #fff;
    background-color: #545454;
    font-size: .9em;
    padding: 3px;
    margin: 0 8px;
}

.control {
    margin-bottom: 1.2em;
}

label {
    display: block;
    margin-bottom: .5em;
}

textarea {
    width: 100%;
    height: 200px;
}