/*
Theme Name:Mk_3
Theme URI: http://example.com/my-custom-theme/
Description: This is a custom theme
Author:tks
Author URI: http://example.com
Version: 1.0
*/

@charset "utf-8";
/*
Noto Sans Japanese
font-family: 'Noto Sans JP', sans-serif;
Regular 400


Noto Serif Japanese
font-family: 'Noto Serif JP', serif;
Regular 400




/*--------------------------------------------------------
	reset
---------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; padding: 0; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; }
ul,ol { list-style-type: none; }
em,strong,th,address { font-style: normal; font-weight: normal; text-align: left; }
h1,h2,h3,h4,h5,h6 { font-weight: normal; font-size: 100%; }
img,
object,
embed { border: 0; vertical-align: top; }
img { max-width: 100%; vertical-align: bottom; }
a{ outline: none;}
hr { border: none;}
table { border-collapse: collapse; border-spacing: 0; font-size: 100%; }
li { list-style-type: none; }
strong { font-weight: bold; }

/*-------------------------------------------------
	base
--------------------------------------------------*/
body {position: relative; background: #fff; color: #000; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-size: 16px; line-height: 1.5;  -webkit-text-size-adjust:100%;}
a{outline: none;}
/*txt img active*/
::selection ,
::-moz-selection { background:#666; }
img::selection,
img::-moz-selection { background:none; }

/*-------------------------------------------------
	font アンチエイリアス
--------------------------------------------------*/
/* 解像度 1x：subpixel、解像度 2x：grayscale */
h1,h2,.number,p
{ -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: unset; }
@media only screen and 
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {
h1,h2,.number,p
{ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
}

/*-------------------------------------------------
	fade
--------------------------------------------------*/
.wrap_f{ width: 100%; height: 100%; position: relative; }
.wrap_f::after {content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000; pointer-events: none; user-select: none; z-index: 300; opacity: 1; transition:1s; }
.wrap_f.fade::after { opacity: 0; pointer-events: none; user-select: none; }

/*anime set
------------------------*/
.main_img img,
.main .logo_55years,
.main h1,
h2,
h3,
.co .txt,
.co .txt_s,
.co .img_box,
.spec .img_box,
.spec .txt_box{ visibility: hidden; }




body{ text-align: center; font-family: 'Noto Serif JP', serif;  font-size: 20px;}
/*-------------------------------------------------
	header
--------------------------------------------------*/
header{background: #342d2d; color: #fff; height: 100px;}


/*-------------------------------------------------
	nav
--------------------------------------------------*/
nav{ background: #555; color: #fff; height: 60px;}
/* メニューを横並びにする */
nav ul.menu > li {
    display: inline-block;
    padding: 0 20px;
}


nav ul.menu > li {
    display: inline-block !important;
    padding: 0 20px !important;
}

/*-------------------------------------------------
	top_contents
--------------------------------------------------*/
#top_contents{ background: #ffef82;}


/*-------------------------------------------------
	contents
--------------------------------------------------*/
#contents{ background: #82baff;}

/*-------------------------------------------------
	news
--------------------------------------------------*/
.news-and-topics {
    text-align: center;
}

.all-news-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #333;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
}


.posts-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; /* コンテンツが必要に応じて折り返されるようにします */
	margin-left: 3%; /* 左側に3%のマージンを追加 */
    margin-right: 3%; /* 右側に3%のマージンを追加 */
}


.post-item:nth-of-type(4n) {
    margin-right: 0; /* 4つ目のアイテムの右側のマージンを0に設定して、行の最後に余分なスペースができないようにします */
}

.thumbnail img {
    width: 100%;
    height: auto;
}

.news-info {
    text-align: left;
}

.post-title a {
    color: #333;
    text-decoration: none;
}

/* 768px以下の画面サイズの場合 */
@media screen and (max-width: 768px) {
    .post-item {
        width: calc(50% - 3% - 1.5%); /* 3%の間隔と、左右のマージンの合計1.5%を差し引きます */
    }

    .post-item:nth-of-type(4n) {
        margin-right: 3%;
    }

    .post-item:nth-of-type(2n) {
        margin-right: 0;
    }
}
/*-------------------------------------------------
	archive
--------------------------------------------------*/
.news-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    
}

.news-categories {
    width: 100%;
    margin-bottom: 20px;
}

.news-categories a {
    margin-right: 10px;
    text-decoration: none;
}

.news-item {
    width: calc(25% - 15px);
    margin-bottom: 30px;
    background-color: #f9f9f9;
    padding: 15px;
    box-sizing: border-box;
}

.news-item-link {
    display: block;
    text-decoration: none;
    color: inherit;
}


.news-thumbnail {
    margin-bottom: 10px;
}

.news-thumbnail img {
    width: 100%;
    height: auto;
}

.news-category {
    font-size: 14px;
}

.news-date {
    font-size: 12px;
}

.news-title {
    font-size: 16px;
}
/*-------------------------------------------------
	para
--------------------------------------------------*/
.para{ position: relative; overflow: hidden; }
.para_inner img{ width: 100%; }
.para_inner{height: 42vw; width: 100%; position: relative; overflow: hidden;}
@media (max-width: 1600px){
.para_inner{height: 42vw; width: 100%; position: relative; }
}/*END*/
@media (max-width: 1024px){
.para_inner{ height: 70vw; width: 100%; }
}/*END*/
@media (max-width: 750px){
.para_inner{ height: 70vw; width: 100%; }
}/*END*/


/* [ on off ]*/
.para_x1{ display: block;}
.para_sp{ display: none;}
@media screen and (max-width: 1024px) {
.para_x1{ display: none;}
.para_sp{ display: block; }
}/*END*/


/*-------------------------------------------------
	gotop
--------------------------------------------------*/
.gotop { position:absolute; bottom:0px; right:20px;width:50px; height:70px; box-sizing:border-box; border-radius: 0%; z-index: 2000!important; }
.gotop a{ position: relative; display:block; background:rgba(33,33,33,0.8); text-decoration:none;width:50px; height:50px; box-sizing:border-box; border-radius: 0%; z-index: 11; transition: 0.3s; }
.gotop a::after { 
    position:absolute; 
    top:50%; 
    left:50%; 
    content: ''; 
    width: 16px; 
    height: 16px; 
    margin: -8px 0 0 -8px; 
    background: url("images/page_top.svg") no-repeat;
    background-size: cover;
}

.gotop a:hover { background:rgba(60,60,60,0.5); }
@media (max-width: 500px) {
.gotop { position:absolute; bottom:0px; right:10px; width:40px; height:50px; }
.gotop a{ width:40px; height:40px; }
.gotop a::after { width: 14px; height: 14px; margin: -7px 0 0 -7px; }
}/*END*/

/*-------------------------------------------------
	footer
--------------------------------------------------*/
footer{ background: #262626; color: #fff;  height: 100px; }
