@charset "utf-8";
/* 「すぐ使えるCMS」記事ページテンプレート CSS */
/* Sugutsukaeru CMS Article pages CSS (Please see the admin CSS file for English explanation) */
/*
■スタイルの分類

「すぐ使えるCMS」の記事ページで使っているスタイル定義は、以下の2つに分類できます。

A. Pure
pure-* というクラス名のスタイル定義は、フレームワーク pure を使用しているものです。レスポンシブWebの仕組みの実装に利用しています。
Pure のレスポンシブWebデザインの設定の仕組みについては、管理画面側のCSSファイル内にコメントで説明があります。

B. 「すぐ使えるCMS」で定義したスタイル
sugu-* というクラス名のスタイル定義は、「すぐ使えるCMS」で定義し表示調整に使用しています。

これらのスタイルは不要であれば削除、変更して使って下さい。

*/
/* 
■フレームワーク pure をベースにした、表示調整のためのスタイル  Pure-based layout adjustment */
.pure-g > div {
  /* マージンまで含んだ幅がボックスのサイズ */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* 
■背景色と基本の枠組み  Background and container */
body {
  background-color: transparent;
}
.pure-g [class *="pure-u"]{
    font-family: YakuHanJPs_Narrow, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4em;
    letter-spacing: .02rem;
    color: #111;
    -webkit-font-smoothing: antialiased;
}
a{
    text-decoration: none;
}
/* ページ全体の枠 */
.sugu-window {
    margin: 0 auto;
    font-family: YakuHanJPs_Narrow, "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4em;
    letter-spacing: .02rem;
    color: #111;
    -webkit-font-smoothing: antialiased;
}
.sugu-container {
  padding: 0 2em 2em 2em;
}
@media screen and (max-width: 35.499em) {
  .sugu-container {
    padding: 0 2.5em 1em 1em;
  }
}
/* 
■文字サイズ  Font */
/* 
■右寄せ・左寄せ・中央  Alignment and Centering */
.sugu-clearfix:before,
.sugu-clearfix:after {
  content: " ";
  display: table;
}
.sugu-clearfix:after {
  clear: both;
}
.sugu-center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.sugu-pull-right {
  float: right;
}
.sugu-pull-left {
  float: left;
}
.sugu-text-center {
  text-align: center;
}
.sugu-text-right {
  text-align: right;
}
/* 
■ページネーション  Pagination */
/* （※管理画面と同じクラス名ですが、定義が異なります） */
ul.sugu-pagination {
  margin: 1em 0;
  padding: 0;
}
ul.sugu-pagination li {
  list-style: none;
  display: inline-block;
  min-height: 0.8;
}
ul.sugu-pagination li a {
  padding: 4px 10px 4px 10px;
  vertical-align: middle;
  border: #cbcbcb 1px solid;
  margin-left: -1px;
  text-decoration: none;
  color: gray;
}
ul.sugu-pagination li a:active,
ul.sugu-pagination li a:hover {
  background-color: #dfdfdf;
  color: black;
}
ul.sugu-pagination li:first-child a {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
ul.sugu-pagination li:last-child a {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
ul.sugu-pagination .sugu-active a,
ul.sugu-pagination .pagethis a {
  font-weight: bold;
  color: black;
}
/* 
■前後リンク  Pager link */
ul.sugu-pager {
    display: flex;
    justify-content: center;
  margin-top: 35px;
  padding: 0;
  height: 3em;
}
ul.sugu-pager li {
  list-style: none;
  display: inline-block;
}
ul.sugu-pager li a {
    display: inline-block;
    padding: 15px 30px;
    vertical-align: middle;
    border: #363636 1px solid;
    border-radius: 48px;
    text-decoration: none;
    color: #111;
    margin: 0 6px;
}
ul.sugu-pager li a:hover{
    background-color: #B1B1B1;
}
ul.sugu-pager li.top a,ul.sugu-pager li.bottom a{
    position: relative;
}
ul.sugu-pager li.top a{
    padding: 15px 30px 15px 50px;
}
ul.sugu-pager li.bottom a{
    padding: 15px 50px 15px 30px;
}
ul.sugu-pager li.top a::before,ul.sugu-pager li.bottom a::before{
    content: '';
    box-sizing: border-box;
    position: absolute;
    right: 30px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #363636;
    border-right: 1px solid #363636;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: .4s;
    z-index: 5;
}
ul.sugu-pager li.top a::before{
    right: auto;
    left: 30px;
    -webkit-transform: translateY(-50%) rotate(225deg);
    transform: translateY(-50%) rotate(225deg);
}
/* 
■全一覧のスタイル  Article list classes */
.sugu-window.article_list{
    width: 100%;
    margin-bottom: 120px;
}
.sugu-window.article_list .sugu-container{
    width: 80%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0;
}
.plain_head{
    width: 100%;
    margin-bottom: 100px;
}
.sugu-article-list .sugu-entry {
  border-bottom: #363636 solid 1px;
}
.sugu-article-list .sugu-entry:first-child {
  border-top: #363636 solid 1px;
}
.sugu-article-list .sugu-entry .sugu-entry-left {
    width: 100%;
}
.sugu-article-list .sugu-entry .sugu-entry-right {
  padding: 0.8em 0;
}
.sugu-article-list .list_date{
    font-size: 14px;
    padding-bottom: 10px;
    display: inline-block;
}
@media screen and (min-width: 35.5em) {
  .sugu-article-list .sugu-entry .sugu-entry-right {
    padding: 0.8em 0 0.8em 2em;
  }
}
.sugu-article-list .sugu-entry h3,
.sugu-article-list .sugu-entry h2 {
  font-weight: normal;
}
.sugu-article-list .sugu-entry p {
  margin: 0.8em auto;
}
.sugu-article-list .sugu-entry p:last-child {
  margin-bottom: 0;
}
.sugu-article-list>a{
    display: block;
    padding: 30px 70px 30px 15px;
    position: relative;
}
.sugu-article-list>a .arrow{
    display: block;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: #fff;
    border: solid 1px #363636;
    transition: .45s;
    z-index: 30;
}
.sugu-article-list>a:hover .arrow{
    background-color: #C0C0C0;
}
.sugu-article-list>a .arrow::before{
    content: '';
    box-sizing: border-box;
    position: absolute;
    right: 10px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #363636;
    border-right: 1px solid #363636;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: .45s;
    z-index: 5;
}
/* 
■短い一覧のスタイル  Short list classes */
.sugu-window.short_list .sugu-container{
    padding: 0;
}
/* 罫線 */
ul.sugu-ruled-list {
  list-style: none outside none;
  padding-left: 0;
  margin: 0;
}
.sugu-ruled-list li {
  border-bottom: #363636 solid 1px;
}
.sugu-ruled-list li:first-child {
  border-top: #363636 solid 1px;
  /* 太さ、線種、色 */
}
/* 文字色・スタイル */
.sugu-window.short_list .sugu-listdate {
  font-size: 14px;
    display: block;
    padding-bottom: 5px;
}
.sugu-window.short_list .sugu-listlink{
    display: block;
    width: 100%;
}
.sugu-window.short_list .sugu-container a{
    display: block;
    width: 100%;
    padding: 20px 65px 20px 15px;
    position: relative;
    transition: .4s;
}
.sugu-window.short_list .sugu-container a .arrow{
    display: block;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background-color: #fff;
    border: solid 1px #363636;
    transition: .45s;
    z-index: 30;
}
.sugu-window.short_list .sugu-container a:hover .arrow{
    background-color: #C0C0C0;
}
.sugu-window.short_list .sugu-container a .arrow::before{
    content: '';
    box-sizing: border-box;
    position: absolute;
    right: 11px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #363636;
    border-right: 1px solid #363636;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: .45s;
    z-index: 5;
}
.sugu-listlink a,
.sugu-listlink a:link {
  color: #111111;
  text-decoration: none;
}
.sugu-listlink a:hover,
.sugu-listlink a:active {
}
/* 文字色・スタイル ここまで */
/* マウスオーバーでの背景色の設定 ここから */
.sugu-interactive-list li:hover {
}
/* マウスオーバーで背景色を変更する時は、リンク文字の変更を止めておく
   （この措置が不要なら設定を削除して下さい。） */
.sugu-interactive-list .sugu-listlink a:hover,
.sugu-interactive-list .sugu-listlink a:active {
  text-decoration: none;
}
/* マウスオーバーでの背景色の設定 ここまで */
/* 
■記事ページ設定  Article page classes */
/* 記事部分 */
.sugu-window.article{
    width: 100%;
    margin-bottom: 120px;
}
.sugu-window.article .sugu-container{
    width: 80%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0;
}
.sugu-article {
  /* 記事ページの画像
	   pure-img クラスの付いているものは枠幅いっぱいに表示される設定になっている
	 */
}
.sugu-article .sugu-article-left {
  padding: 0.8em 0;
    width: 100%;
}
.sugu-article .sugu-article-right {
  padding: 0.8em 0;
}
.article_date{
    padding-bottom: 15px;
    font-size: 15px;
}
.article_h3{
    border-bottom: solid 1px #363636;
    font-size: 20px;
    padding-bottom: 20px;
    line-height: 1.6em;
}
@media screen and (min-width: 35.5em) {
  .sugu-article .sugu-article-right {
    padding: 10px 0;
  }
}
/* 画像表示調整 */
.sugu-article .sugu-article-right{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    display: block;
}
.article_img_flex{
    display: flex;
    gap: 2%;
}
.article_img_flex>div{
    width: calc(25%);
}
.sugu-article img {
  margin-bottom: 20px;
}
.article_main_text{
    margin-bottom: 15px;
    line-height: 1.8em;
    word-break: break-all;
}
.article_main_text p{
    line-height: 1.8em;
    padding-bottom: 15px;
    word-break: break-all;
}
.article_main_text p:last-of-type{
    padding-bottom: 0;
}
.article_main_text p a{
    color: #888888;
    display: inline-block;
    padding-bottom: 2px;
    word-break: break-all;
    text-decoration: underline;
    line-height: 1.5em;
    transition: .4s;
}
.article_main_text p a:hover{
    opacity: .6;
}
/* 記事ページのフッタリンク調整 */
.sugu-page-link {
  margin-top: 35px;
}
.article_pager{
    width: 100%;
    display: flex;
    justify-content: center;
}
.sugu-page-link a {
    display: inline-block;
    padding: 15px 30px;
    vertical-align: middle;
    border: #363636 1px solid;
    border-radius: 48px;
    text-decoration: none;
    color: #111;
    margin: 0 6px;
    line-height: 1em;
    background-color: #fff;
}
.sugu-page-link a:hover{
    background: none;
    background-color: #B1B1B1;
}
.sugu-page-link a.prev{
    padding: 15px 30px 15px 50px;
    position: relative;
}
.sugu-page-link a.next{
    padding: 15px 50px 15px 30px;
    position: relative;
}
.sugu-page-link a.prev::before,.sugu-page-link a.next::before{
    content: '';
    box-sizing: border-box;
    position: absolute;
    right: 30px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-top: 1px solid #363636;
    border-right: 1px solid #363636;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: .4s;
    z-index: 5;
}
.sugu-page-link a.prev::before{
    right: auto;
    left: 30px;
    -webkit-transform: translateY(-50%) rotate(225deg);
    transform: translateY(-50%) rotate(225deg);
}

/* 
■ファイル一覧の形式（ul） Files */
.sugu-file-list {
  list-style-position: outside;
}
.sugu-file-list li {
  line-height: 1.4;
}
/* ファイルをアップロードしたときのアイコン表示  Icons for uploaded files */
.filelink {
    display: inline-block;
    color: #111;
    padding: 12px 15px 12px 44px;
    margin-right: 10px;
    margin-top: 10px;
    background-repeat: no-repeat;
    background-position: 14px 50%;
    background-image: url(../../icons/word.svg);
    letter-spacing: 0.05em;
    box-sizing: border-box;
    background-color: #f5f5f5;
    border-radius: 4px;
    transition: opacity .4s;
}
.filelink:hover{
    opacity: .7;
}
.doc {
  background-image: url(../../icons/word.svg);
  background-size: 20px;
}
.pdf {
  background-image: url(../../icons/pdf.svg);
  background-size: 20px;
}
.ppt {
  background-image: url(../../icons/ppt.gif);
}
.img {
  background-image: url(../../icons/img.svg);
  background-size: 20px;
}
.txt {
  background-image: url(../../icons/word.svg);
}
.xls {
  background-image: url("../../icons/xlsx.svg");
    background-size: 20px;
}
.zip {
  background-image: url("../../icons/zip.svg");
    background-size: 20px;
}


@media print, screen and (max-width: 750px) {
    .sugu-window.short_list .sugu-container a{
        padding: 18px 42px 18px 0;
    }
    .sugu-window.short_list .sugu-container a .arrow{
        right: 0;
    }
    .sugu-window.short_list .sugu-listlink{
        font-size: 15px;
    }
    .plain_head {
        margin-bottom: 60px;
    }
    .sugu-window.article .sugu-container{
        width: 100%;
        padding: 0 20px;
    }
    .article_date{
        font-size: 14px;
    }
    .article_h3{
        font-size: 17px;
    }
    .sugu-article .sugu-article-right {
        padding: 5px 0;
    }
    .article_img_flex{
        flex-wrap: wrap;
    }
    .article_img_flex>div {
        width: calc(50% - 1%);
    }
    .sugu-article img{
        margin-bottom: 10px;
    }
    .sugu-window.article{
        margin-bottom: 80px;
    }
    .sugu-page-link {
        margin-top: 15px;
    }
    .sugu-page-link a {
        padding: 15px 25px;
        font-size: 14px;
    }
    .sugu-page-link a.prev {
        padding: 15px 22px 15px 40px;
    }
    .sugu-page-link a.next {
        padding: 15px 40px 15px 22px;
    }
    .sugu-page-link a.prev::before, .sugu-page-link a.next::before{
        right:22px;
    }
    .sugu-page-link a.prev::before{
        left: 22px;
    }
    .sugu-window.article_list .sugu-container{
        width: 100%;
        padding: 0 20px;
    }
    .sugu-article-list>a{
        padding: 20px 40px 20px 0;
    }
    .sugu-article-list>a .arrow{
        right: 0;
    }
    ul.sugu-pager li a{
        padding: 15px 20px;
        font-size: 14px;
    }
    ul.sugu-pager li.top a {
        padding: 15px 20px 15px 34px;
    }
    ul.sugu-pager li.bottom a{
        padding: 15px 34px 15px 20px;
    }
    ul.sugu-pager li.top a::before, ul.sugu-pager li.bottom a::before{
        right: 22px;
    }
    ul.sugu-pager li.top a::before{
        left: 22px;
    }
    .sugu-window.article_list{
        margin-bottom: 80px;
    }
    
    
    
    
    
    
    
    
    
    



}