@charset "UTF-8";

/* ウェブフォントの読み込み */
@import url('https://soramituart.com/fonts/GenJyuuGothicL-Regular.css');
@import url('https://fonts.googleapis.com/css2?family=Inter:opsz@14..32&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css');
/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,*::before,*::after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img{max-width:100%}picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}


/* 全体に適用する */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-weight: normal;
}

/* root */
:root {
    --color: #9EC2C2;
    --white: #ffffff;
    --gray: #f7f7f7;
    --black: #5D4E72;
    	--font-icon: 'Font Awesome 6 Free';
}

/* 基本設定 */
.fadeln {
	display: none;
}
body {
    background-color: var(--gray);
    text-align: left;
    line-height: 1.8;
    letter-spacing: 0.1em;
    font-family: "Inter" , "GenJyuuGothicL" , serif;
    color: var(--black);
}

/* 横幅769px以上で読み込む */
@media screen and (min-width: 769px) {
    body {
        font-size: 14px;
    }
}

/* 横幅768px以下で読み込む */
@media screen and (max-width: 768px) {
    body {
        font-size: 13px;
    }
}

/* リンク */
a {
    color: var(--color);
    transition: .5s all;
}

a:visited {
    color: var(--color);
}

a:hover,
a:visited:hover {
    color: var(--black);
}

.fa-envelope{
color: var(--color);
text-decoration: none;
}

/* ヘッダー */
header {
    position: relative;
    margin: 15vh auto 3em;
    width: 80%;
    max-width: 400px;
    height: 300px;
    border-radius: 45% 55% 51% 49% / 63% 27% 73% 37%;
    background: url('img/top_img.webp') center/cover;
}

header .headerBox {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

header img {
    display: block;
    margin: 0 auto;
    width: 50%;
    height: auto;
}

header h1 {
    text-align: center;
    font-size: 1.3em;
    color: var(--white);
}

/* ナビゲーション */
nav {
    margin: 3em auto 2em;
    text-align: center;
}

nav ul li {
    display: inline-block;
    margin: 0 1em;
}

nav ul li a,
#About{
    display: inline-block;
    line-height: 2em;
    padding: 0.2em 1em;
    background-color: var(--white);
    text-decoration: none;
    color: var(--black);
    border-radius:0.3em;
	transition : all 0.3s ease 0s;
}

nav ul li a:visited,
#About:visited{
    color: var(--black);
}

nav ul li a:hover,
nav ul li a:visited:hover,
#About:hover,
#About:visited:hover
{
	background-color: var(--color);
    color: var(--gray);
}

/* 補足情報 */
aside {
    text-align: center;
}

.news{
	display: flex;
	flex-direction: column;
	width: 360px;
	margin:0 auto;
}
.news span{
	margin-bottom:0.3rem;
}
.fa-rotate{
	color: var(--black);
	margin-right: 0.2rem;
	font-size: 0.85rem;
}

/* メインコンテンツ */
main {
    margin: 3em auto;
    width: 90%;
    max-width: 400px;
    text-align: center;
}

/* セクションとアーティクル */
section {
    margin: 2em auto;
}

/* 見出し */
section h2 {
    margin-bottom: 0.5em;
    font-size: 1.3em;
}

section h3 {
    display: inline-block;
    padding: 0.1em 1em;
    background-color: var(--color);
    font-size: 1em;
    color: var(--white);
}

/* セクション */
section p:not(.box p){
    margin: 0.5em auto 1.5em;
}

section span {
    font-weight: bold;
    color: var(--color);
}

section mark {
    background: linear-gradient(to bottom, transparent 0, transparent 50%, var(--white) 50%, var(--white) 100%);
    color: var(--black);
}

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

section em {
    border-bottom: thin dashed red;
}

section .box {
    position: relative;
    margin: 1em auto 1.5em;
    padding: 1.5em;
}

section .box::before,
section .box::after {
    position: absolute;
    display: block;
    content: '';
    width: 40px;
    height: 40px;
}

section .box::before {
    top: 0;
    left: 0;
    border-top: thin solid var(--color);
    border-left: thin solid var(--color);
}

section .box::after {
    bottom: 0;
    right: 0;
    border-right: thin solid var(--color);
    border-bottom: thin solid var(--color);
}

section .box p {
    margin: 0.5em auto 0;
}

/* -----更新履歴・埋め込み用スキン----- */

/* 更新履歴(外枠) */
.kframe {
	display: block;
	border: 1px solid var(--gray);
	width: min(360px,100%);/* 外枠の幅 */
	height: 25px;/* 外枠の高さ */
	margin: 0 auto;
}

/* 埋め込み用スキン内部 */
.kousin-body { 
	padding:  0 1em;
	color: var(--black); 
	text-align: center;
}
.kousin-body a{
	text-decoration: none;
	color: var(--color);
}

.kousin-body {
/* 日付境界バー非表示 */
.dateseparator{ display: none;}

/* 日付と記事タイトル横の余白 */
.kdate,.ktitlelink { margin-right: 0.2rem;}

/* カテゴリーの装飾 */
.categories { margin: 0 10px 0 0;}
.categorylink {
	display: inline-block;
	color: var(--black);
	font-size: 0.7rem;
}

/* カテゴリーリンクの項目前にアイコンを付ける */
.categorylink::before {
	content: '\f07b';
	font-family: var(--font-icon);
	margin-right: 0.2rem;
	color: var(--black);
}

/* カテゴリ間のセパレータ */
.catseparator {
	display: inline-block;
	margin: 0 1px;			/* 左右に1pxの余白 */
	color: var(--black);			/* 文字色 */
}

/* Powered by */
.kousinpb {
	font-size: 0.7rem;
	color: var(--black);
	margin-top: 1rem;
	text-align: right;
}

/* -----ここまで----- */
