
@charset "UTF-8";

/* Template & Designed by Towako. */
/* https://ninawas.me */

/* ウェブフォントの読み込み */
@import url('https://fonts.googleapis.com/css?family=Charmonman|Josefin+Sans|M+PLUS+Rounded+1c&display=swap');

/* 全体に適用する */
* {
padding: 0;
margin: 0;
box-sizing: border-box;
font-weight: normal;
font-family: 'M PLUS Rounded 1c', sans-serif;
}

/*ダークモード対応*/
:root {
  --main-text: #000;
  --main-bg: #eeeeee;
  }
  /*
@media (prefers-color-scheme: dark) {
  :root {
    --main-text: #eeeeee;
    --main-bg: #0a1b33;
    }
}*/

/* 共通設定 */
body {
line-height: 1.7;
letter-spacing: 0.1em;
text-align: justify;
word-break: break-all;
background: var(--main-bg);
font-size: 13px;
color: var(--main-text);
}

/* リンク */
a {
text-decoration: none;
transition: all .5s;
border-radius: 2px;
color: #7788aa;
}

/* ホバー */
a:hover {
background-color: #7788aa;
color: #fff;
}

/* コンテナ */
#wrap {
margin: 10vh auto 0;
}

/* ヘッダー */
header {
position: relative;
padding: 12% 2%;
width: 80%;
border: thin solid #000;
text-align: center;
}

header,
section {
margin: 0 auto 5em;
}

/* ヘッダー内画像 */
header img {
width: 60%;
height: auto;
border-radius: 50%;
box-shadow: 1px 1px 5px #808080;
}

/* ヘッダー見出し */
header h1 {
position: relative;
margin: 0.5em auto;
letter-spacing: 0.2em;
}

header h1::before {
position: absolute;
content: '';
display: block;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 10%;
height: 1px;
background-color: #7788aa;
}

/* ナビゲーション */
header nav {
margin: 1.5em auto;
}

header nav ul {
display: flex;
justify-content: space-around;
width: 100%;
list-style-type: none;
}

header nav ul li {
flex-basis: 20%;
}

header nav ul li a {
font-family: 'Charmonman', cursive;
font-size: 1.1em;
}

/* ヘッダー補足情報 */
header aside {
position: absolute;
padding: 0 2em;
bottom: -0.8em;
right: 5%;
letter-spacing: 0.2em;
background-color: #eeeeee;
}

/* メインコンテンツ */
main {
margin: 0 auto;
width: 80%;
}

/* セクション */
section {
padding: 5% 8%;
border: thin solid #000;
}

/* セクションリンク */
section a {
display: inline-block;
margin: 0.1em auto;
padding: 0 0.2em;
background-color: #131366;
color: #fff;
}

/* セクション見出し */
section h2 {
margin-bottom: 0.5em;
border-bottom: thin solid #000;
font-size: 1.1em;
font-family: 'Josefin Sans', 'M PLUS Rounded 1c', sans-serif;
}

section h3 {
position: relative;
margin-bottom: 1em;
font-size: 1em;
}

section h3 span {
padding-right: 1em;
background-color: #eeeeee;
font-size: 1em;
font-family: 'Josefin Sans', 'M PLUS Rounded 1c', sans-serif;
}

section h3::before {
position: absolute;
display: block;
content: '';
z-index: -100;
top: 50%;
left: 0;
width: 100%;
height: 1px;
background-color: #000;
}

/* 見出しここまで */

/* セクション内共通 */
section p {
margin: 1em auto 1.5em;
}

section p span {
font-weight: bold;
color: #252A35;
}

section mark {
background: linear-gradient(transparent 70%, #e0e0e0 30%);
}

section strong {
font-weight: bold;
color: red;
}

/* リスト系 */
section dl,
section ul {
margin: 1em auto 1.5em;
}

section dd {
margin-bottom: 0.5em;
margin-left: 2em;
}

section ul {
list-style-type: none;
margin-left: 0.5em;
padding-left: 1em;
border-left: 3px solid #131366;
}

.float li {
margin-right: 1em;
float: left;
}

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

/* リストここまで */

/* フッター */
footer {
margin: 0.5em auto;
text-align: center;
}

footer,
footer a {
font-family: 'Charmonman', 'M PLUS Rounded 1c', sans-serif;
}

/* 右揃え */
.right {
text-align: right;
}

/* 枠線リンク */
.link {
display: inline-block;
margin: 0.2em auto;
padding: 0.2em 0.5em;
background-color: #fff;
border: thin solid #131366;
color: #131366;
}

/* 上に戻るボタン */
#Top {
height: 1px;
}

#PageTop {
position: fixed;
bottom: 4%;
right: 5%;
}

#PageTop a {
display: block;
z-index: 100;
padding: 0 0.3em;
background-color: #fff;
border: 3px double #131366;
color: #131366;
}

/* フォーム系 */
textarea,{
-webkit-appearance: none;
padding: 0.2em 0.5em;
background-color: #131366;
border: thin solid #131366;
border-radius: 2px;
color: #fff;
}

textarea {
width: 200px;
height: 70px;
}

textarea::-webkit-scrollbar {
width: 8px;
height: 8px;
}

textarea::-webkit-scrollbar-track {
border-radius: 50px;
}

textarea::-webkit-scrollbar-thumb {
background-color: #fff;
border-radius: 50px;
}

/* 横幅768px以上で読み込む */
@media screen and (min-width:768px) {
#wrap {
max-width: 760px;
}

/* フロートの解除 */
#wrap::after {
display: block;
content: '';
clear: both;
}

/* ヘッダーをフロートさせる */
header {
float: left;
width: 30%;
}

/* 回り込みの指定 */
main {
overflow: hidden;
width: 60%;
}

/* 上に戻るボタンサイズ */
#PageTop a {
font-size: 20px;
}
}

/* 横幅1024px以上で読み込む */
@media screen and (min-width:1024px) {
#wrap {
max-width: 1000px;
}
}