﻿@charset "UTF-8";

@import url('//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;600;700;900&display=swap');
@import url('//fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700;900&display=swap');
@import url('//fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
@import url('//fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700;900&display=swap');
@import url('//fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');
/* Google font Icon */
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");


/*========================
ヘッダー
========================*/
/*h1コメント*/
h1{
  width: 100%;
  padding: 6px 8px;
  font-size: 0.7em;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #AAA;
}

header {
  width: 100%;
  padding: 12px 24px 24px;
  margin: 0 auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: flex-start;
  align-items:center;
  box-shadow: 0px 5px 5px -2px rgba(0,0,0,0.2);
}
@media screen and (max-width: 960px) {
h1{
  display: none;
  }
header {
  padding: 18px 12px 18px;
  }
}

/*ロゴ*/
header .logo {
  position:relative;
  display: inline-block;
  font-weight: 500;
  font-size: 1em;
  color: #222;
  line-height: 1.6;
  padding: 0 0 0 5.2em;
  white-space: nowrap;
}
header .logo span{
  display: block;
  font-size: 0.7em;
  font-weight: 400;
  letter-spacing: 0.03em;
  margin-bottom: 3px;
}
header .logo:before{
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  content:"";
  display:inline-block;
  width:4.5em;
  height:4.5em;
  background:url(../img/logo.png) no-repeat;
  background-size:contain;
}
header .contact{
  margin: 0 0 0 auto;
  display: inline;
}
header .contact a{
  text-decoration: none;
}

/*無料ご相談・お見積りボタン*/
.hdbtn_contact {
	display:inline-block;
	color: #FFF;
	background-color: #24AC99;
	text-decoration: none;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
	padding: 1.3em 1em 1.3em 3em;
	transition: 0.3s;
	position: relative;
  line-height: 1;
  white-space: nowrap;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1.1em;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.hdbtn_contact:before {
	position: absolute;
  top: 50%;
  left: 0.8em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.4em;
  font-family:"Material Symbols Rounded";
	content: "\e158"; /*メール*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.hdbtn_contact:hover{
	background-color: #1E8C7B;
	transition: 0.3s;
}

/*電話リンクボタン*/
.hdbtn_tel {
  vertical-align: bottom;
	display: inline-block;
	color: #24AC99;
	background-color: #FFF;
  border: 1px solid #24AC99;
	text-decoration: none;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
	padding: 0.8em 1.2em 0.8em 1.2em;
	transition: 0.3s;
  line-height: 1;
  text-align: center;
}
.hdbtn_tel span{
  white-space: nowrap;
  font-family: "Figtree", sans-serif;
  font-size: 1.2em;
  font-weight: 600;
  letter-spacing: 0.06em;
}
.hdbtn_tel span:before {
  font-size: 1.05em;
  vertical-align: bottom;
  font-family:"Material Symbols Rounded";
	content: "\e0b0"; /*電話*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.hdbtn_tel p{
  font-size: 0.7em;
  font-weight: 400;
  line-height: 1;
  margin-top: 0.4em;
}
.hdbtn_tel:hover{
	background-color: #F5F5ED;
	transition: 0.3s;
}
@media screen and (max-width: 960px) {
header .logo {
  font-size: 0.9em;
  padding: 0 0 0 4.6em;
  letter-spacing: 0.03em;
  }
header .logo:before{
  width:4em;
  height:4em;
  }
.hdbtn_contact {
	padding: 1.3em 0.6em 1.3em 2.4em;
  font-size: 0.9em;
  }
.hdbtn_contact span{
  display: none;
  }
.hdbtn_contact:before {
  left: 0.6em;
  font-size: 1.3em;
  }
.hdbtn_tel {
	padding: 0.6em 1em 0.6em 1em;
  }
.hdbtn_tel span{
  font-size: 1em;
  }
.hdbtn_tel p{
  font-size: 0.65em;
  }
}
@media screen and (max-width: 640px) {
header .logo {
  font-size: 1em;
  letter-spacing: 0.05em;
  }
header .contact{
  display: none;
  }
}


/*========================
フッター
========================*/
footer {
  width: 100%;
  margin: 0 auto;
  padding: 0 12px 18px;
  text-align: center;
}
footer img{
  width: 100%;
  max-width: 100px;
  margin-bottom: 8px;
}
footer h1{
  font-size: 1em;
  font-weight: 500;
  color: #333;
  margin-bottom: 5px;
}
footer p {
  font-size: 0.9em;
  line-height: 1.6;
}
.copyright {
  font-size: 0.7em;
  color: #999;
  font-weight: 400 !important;
  margin-top: 18px;
}
@media screen and (max-width: 640px) {
footer {
  margin: 0 auto 64px;
  padding: 0 12px 12px;
  }
}

/*========================
固定フッター (スマホでのみ表示)
========================*/
.footfixbtn {
  display: none;
}
@media screen and (max-width: 640px) {
.footfixbtn {
  position: fixed;
  bottom: 0;
  left: 0;
  width:100%;
  height: 64px;
  margin: auto;
  padding:0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: center;
  align-items:stretch;
  }
.footfixbtn a{
  height: 100%;
  display: block;
  text-decoration: none;
  }
.footfixbtn li:first-child{
  width: 75%;
  height: 100%;
  background: #148576;
  background: linear-gradient(0deg,rgba(20, 133, 118, 1) 0%, rgba(36, 172, 153, 1) 100%);
  text-align: center;
  padding: 12px 0 0;
  }
.footfixbtn li:first-child p{
  font-size: 0.8em;
  line-height: 1;
  white-space: nowrap;
  margin-bottom: 6px;
  letter-spacing: 0.1em;
  color: #FFF;
  font-weight: 400;
  }
.footfixbtn li:last-child{
  width: 25%;
  height: 100%;
  background: #E9E9D6;
  text-align: center;
  }

/*お問い合わせフォーム*/
.fb_contact {
  position:relative;
  display: inline-block;
  font-size: 1.3em;
  line-height: 1;
  padding: 0;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  margin: 0 auto;
  line-height: 1;
  white-space: nowrap;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-weight: 600;
  letter-spacing: 0.04em;
  }

/*ジャンプトップ*/
.fb_jump {
	display: block;
	color: #24AC99 !important;
	text-decoration: none;
	position: relative;
  padding: 3.1em 0 0;
  line-height: 1;
  white-space: nowrap;
  font-size: 0.85em;
  font-weight: 600;
  letter-spacing: 0.08em;
  margin: 0 auto;
  text-align: center;
  }
.fb_jump:before {
	display: block;
	position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  font-size: 6em;
  line-height: 0.6;
  font-family:"Material Symbols Rounded";
	content: "\e316"; /*矢印*/
  font-variation-settings:
  'FILL' 0,
  'wght' 200
  }
}


/*========================
汎用パーツ
========================*/
/*-------------------------
見出し
--------------------------*/
.title {
  text-align: center;
  color: #222;
  padding: 0 18px;
  margin: 84px auto 18px;
  font-size: 2.1em;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  letter-spacing: 0.06em;
}
.titleeng {
  text-align: center;
  color: #24AC99;
  padding: 0 18px;
  margin: 0 auto 42px;
  font-size: 1.3em;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 640px) {
.title {
  margin: 64px auto 18px;
  font-size: 1.6em;
  }
.titleeng {
  margin: 0 auto 32px;
  font-size: 1.1em;
  }
}

/*-------------------------
汎用テーブル
--------------------------*/
table {
  width: 100%;
  border-collapse: collapse;
}
table tr{
  border-bottom: 1px solid #AAA;
}
table tr:first-child{
  border-top: 2px solid #24AC99;
}
table th{
  width: 30%;
  font-weight: normal;
  text-align: left;
  padding: 0.8em 0.8em;
  line-height: 1.65;
  vertical-align: top;
}
table td{
  width: 70%;
  font-weight: normal;
  text-align: left;
  padding: 0.8em 0.8em;
  vertical-align: top;
}
table td p{
  margin-bottom: 0.3em;
}
table td a{
  text-decoration: underline;
  font-weight: 600;
  color: #24AC99;
}
table td a:hover{
  text-decoration: none;
}
@media screen and (max-width: 640px) {
table th,
table td{
  display: block;
  width: 100%;
  font-size: 0.95em;
  }
table th{
  padding: 0.8em 0.5em 0;
  font-weight: 600;
  font-size: 1em;
  }
table td{
  padding: 0.3em 0.5em 0.8em;
  }
}
@media screen and (max-width: 480px) {
table th,
table td{
  font-size: 0.9em;
  }
}

/*-------------------------
アイコン付き電話リンクテキスト
--------------------------*/
.tel {
  position:relative;
  display: inline-block;
  font-size: 1.6em;
  line-height: 1;
  padding: 0 0 0 1.2em;
  color: #333;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  font-weight: 500;
  margin: 6px 0;
  letter-spacing: 0.08em;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
}
.tel:before{
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.1em;
  line-height: 0;
  font-family:"Material Symbols Rounded";
	content: "\e0b0"; /*電話*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}

.telS {
  position:relative;
  display: inline-block;
  font-size: 1.3em;
  line-height: 1;
  padding: 0 0 0 1.2em;
  color: #333;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  font-weight: 500;
  margin: 6px 0;
  letter-spacing: 0.06em;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
}
.telS:before{
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.1em;
  line-height: 0;
  font-family:"Material Symbols Rounded";
	content: "\e0b0"; /*電話*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}

.tel_green {
  position:relative;
  display: inline-block;
  font-size: 1.6em;
  line-height: 1;
  padding: 0 0 0 1.2em;
  color: #24AC99;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  font-weight: 500;
  margin: 6px 0;
  letter-spacing: 0.08em;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
}
.tel_green:before{
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.1em;
  line-height: 0;
  font-family:"Material Symbols Rounded";
	content: "\e0b0"; /*電話*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}

/*-------------------------
ボタン・テキストリンク
--------------------------*/
/*無料ご相談・お見積り*/
.iconbtn_contact {
	display:inline-block;
	color: #FFF;
	background-color: #24AC99;
	text-decoration: none;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
	padding: 1em 1.2em 1em 3em;
	transition: 0.3s;
	position: relative;
  line-height: 1;
  white-space: nowrap;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1.05em;
  font-weight: 500;
  letter-spacing: 0.03em;
  margin: 5px;
  text-align: center;
}
.iconbtn_contact:before {
	position: absolute;
  top: 50%;
  left: 0.8em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.4em;
  font-family:"Material Symbols Rounded";
	content: "\e158"; /*メール*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.iconbtn_contact:hover{
	background-color: #1E8C7B;
	transition: 0.3s;
}
@media screen and (max-width: 480px) {
.iconbtn_contact {
  width: 100%;
  }
}

/*ご提供サービス内容*/
.iconbtn_service {
	display:inline-block;
	color: #FFF;
	background-color: #24AC99;
	text-decoration: none;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
	padding: 1em 1.2em 1em 2.8em;
	transition: 0.3s;
	position: relative;
  line-height: 1;
  white-space: nowrap;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1.05em;
  font-weight: 500;
  letter-spacing: 0.03em;
  margin: 5px;
  text-align: center;
}
.iconbtn_service:before {
	position: absolute;
  top: 50%;
  left: 0.8em;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.4em;
  font-family:"Material Symbols Rounded";
	content: "\efc5"; /*掃除機*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.iconbtn_service:hover{
	background-color: #1E8C7B;
	transition: 0.3s;
}
@media screen and (max-width: 480px) {
.iconbtn_service {
  width: 100%;
  }
}

/*-------------------------
ページ上部へジャンプ
--------------------------*/
#jumptop{
  position:fixed;
  right: 32px;
  bottom:32px;
  z-index: 2;
}
.jumpbtn {
  width:5em;
  height:5em;
  cursor:pointer;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
  cursor:pointer;
  background:#24AC99;
  box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.4);
  position: relative;
}
.jumpbtn:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  display: block;
  font-size: 3em;
  color: #FFF;
  font-family:"Material Symbols Rounded";
	content: "\e5d8"; /*上向き矢印*/
  font-variation-settings:
  'FILL' 0,
  'wght' 400
}
@media(max-width:1240px){
#jumptop{
  right: 24px;
  bottom:24px;
  }
.jumpbtn {
  width: 4.2em;
  height: 4.2em;
  }
.jumpbtn:before {
  font-size: 2.4em;
  }
}
@media(max-width:640px){
.jumpbtn {
  display: none;
  }
}

/* 前ページへ戻るボタン */
.pagebackbtn {
	display: inline-block;
	color: #24AC99;
	background-color: #FFF;
	border: solid 1px #24AC99;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
	text-decoration: none;
	padding: 0.8em 1.2em 0.9em 2.6em;
	transition: 0.3s;
	position: relative;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  line-height: 1;
  font-size: 1em;
  font-weight: 600;
  margin-top: 42px;
}
.pagebackbtn:before {
	position: absolute;
	top: 0.5em;
	left: 0.6em;
  font-size: 1.4em;
  font-family:"Material Symbols Rounded";
	content: "\e5c4"; /*矢印*/
  font-variation-settings:
  'FILL' 0,
  'wght' 300
}


/*========================
予備パーツ
========================*/
/*-------------------------
横並びflexbox
--------------------------*/
/* 幅可変横並び*/
.column {
  width:100%;
  margin: auto;
  padding:0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: flex-start;
  align-items:flex-start;
}
.column li{
  margin:0 15px 0 0;
}
.column li:last-child{
  margin:0 0 0 0;
}

/* 画像320px ＋ テキスト*/
.column320 {
  width:100%;
  margin: auto;
  padding:0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: center;
  align-items:center;
}
.column320_img {
  max-width: 320px;
  margin: 0 30px 0 0;
}
.column320_text {
  flex: 1;
}
@media screen and (max-width: 1000px) {
.column320_img {
  max-width: 240px;
  margin: 0 20px 0 0;
  }
}
@media screen and (max-width: 767px) {
.column320 {
  flex-direction: column;
  display:block;
  }
.column320_img {
  max-width: 100%;
  margin: 0 0 15px 0;
  text-align: center;
  }
}

/* 均等2列(767px以下で縦列切り替え) */
.col2 {
  width:100%;
  margin: auto;
  padding:0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: center;
  align-items:center;
}
.col2 li{
  width: 50%;
  max-width:50%;
  width: calc(100% / 2);
  margin:0 30px 0 0;
}
.col2 li:last-child{
  margin:0 0 0 0;
}
@media screen and (max-width: 1000px) {
.col2 li{
  margin:0 20px 0 0;
  }
}
@media screen and (max-width: 767px) {
.col2 {
  flex-direction: column;
  display:block;
  }
.col2 li {
  width:100%;
  max-width:100%;
  margin:0 0 20px 0;
  }
.col2 li:last-child{
  margin:0 0 0 0;
  }
}


/*========================
CMS埋め込みトピックス
========================*/
/*-------------------------
記事一覧 (TOP、一覧ページ)
--------------------------*/
.topicslist {
  width:100%;
  max-width: 1420px;
  height: auto;
  margin: 0 auto;
  padding:0 12px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: flex-start;
  align-items:stretch;
  flex-wrap: wrap;
}
.topicslist li{
  width: 25%;
  max-width:25%;
  width: calc(100% / 4);
  height: auto;
  padding: 0 12px 32px;
}
.topicslist li a{
  display: block;
  text-decoration: none;
}
@media screen and (max-width: 1240px) {
.topicslist {
  max-width: 840px;
  }
.topicslist li{
  width: 50%;
  max-width:50%;
  width: calc(100% / 2);
  padding: 0 18px 32px;
  }
}
@media screen and (max-width: 640px) {
.topicslist {
  max-width: 420px;
  display: block;
  flex-direction: column;
  }
.topicslist li{
  width: 100%;
  max-width:100%;
  padding: 0 8px 24px;
  }
}

.topicbox {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 12px;
  background-color: #FFF;
  box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.3);
  position: relative;
}
@media screen and (max-width: 480px) {
.topicbox {
  padding: 10px;
  }
}

/*サムネイル画像*/
.topicbox div{
  overflow: hidden;
  position: relative;
  padding-top: 64%;
}
.topicbox div img{
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/*更新日時*/
.topicbox>h4{
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
  font-size: 1.05em;
  font-weight: 300;
  letter-spacing: 0.07em;
  line-height: 1;
  white-space: nowrap;
  color: #AAA;
  margin-top: 15px;
  padding: 0 12px;
}

/*記事タイトル*/
.topicbox>h2{
  font-size: 1.05em;
  font-weight: 600;
  line-height: 1.65;
  color: #333;
  margin: 10px auto 8px;
  padding: 0 12px;
}

/*カテゴリ名*/
.topicbox>h3{
  display: inline-block;
  font-size: 0.8em;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  background-color: #E7E7E7;
  color: #444;
  margin: 0 12px 5px;
  padding: 0.5em 0.8em;
  border-radius: 9999px;
  -webkit-border-radius: 9999px;
  -moz-border-radius: 9999px;
}

/*-------------------------
記事一覧ページ
--------------------------*/
@media screen and (max-width: 640px) {
.topicsarchive {
  margin: 0 auto 64px;
  }
}
/*ページタイトル*/
.topicsarchive > h1{
  display: block !important;
  max-width: 1420px;
  color: #222;
  padding: 0 24px;
  margin: 0 auto 32px;
  font-size: 2em;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1240px) {
.topicsarchive > h1{
  max-width: 840px;
  }
}
@media screen and (max-width: 640px) {
.topicsarchive > h1{
  margin: 0 auto 24px;
  font-size: 1.5em;
  }
}

/*カテゴリリンク*/
.topicsarchive > .categories {
  max-width: 1420px;
  margin: 0 auto 32px;
  padding: 0 24px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  justify-content: flex-start;
  align-items:flex-start;
  flex-wrap: wrap;
}
.topicsarchive > .categories a{
  display: inline-block;
  position: relative;
  padding: 0 0 0 1.5em;
  font-weight: 500;
  color: #333;
  line-height: 1;
  font-size: 1em;
  text-decoration: none;
  white-space: nowrap;
  margin: 0 1em 0 0;
}
.topicsarchive > .categories a:before {
  position: absolute;
  top: 0.3em;
  left: 0;
  font-size: 1.3em;
  line-height: 0;
  color: #24AC99;
  font-family:"Material Symbols Rounded";
	content: "\eaaa"; /*丸囲み矢印*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.topicsarchive > .categories a:hover{
  text-decoration: underline;
}
@media screen and (max-width: 1240px) {
.topicsarchive > .categories{
  max-width: 840px;
  }
}
@media screen and (max-width: 640px) {
.topicsarchive > .categories{
  margin: 0 auto 24px;
  }
}
@media screen and (max-width: 480px) {
.topicsarchive > .categories a{
  font-size: 0.9em;
  }
}

/*-------------------------
ページャー
--------------------------*/
.pager{
  width: 100%;
  padding: 0 18px;
	text-align:center;
	padding:0;
	clear:both;
  margin-top: 32px;
}
/*ページャーボタン*/
.pager a{
  color: #939BA6;
  font-size: 1.2em;
  padding: 0.2em 0.5em;
  text-decoration: none;
  line-height: 1;
  font-weight: 500;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
  margin:0.1em;
}
/*現在のページのボタン*/
.pager a.current{
  background-color: #939BA6;
  color: #FFF;
}
/*前のリストを表示(左向き矢印)*/
.pager a.before {
  padding: 0;
}
.pager a.before:after{
  display: inline-block;
  text-decoration: none;
  vertical-align: top;
  margin-top: 0.15em;
  color: #939BA6;
	font-family: "Material Icons";
  font-size: 1.1em;
  font-family:"Material Symbols Rounded";
	content: "\e5e0"; /*左向き矢印*/
  font-variation-settings:
  'FILL' 0,
  'wght' 200
}
/*先のリストを表示(右向き矢印)*/
.pager a.next {
  padding: 0;
}
.pager a.next:after{
  display: inline-block;
  text-decoration: none;
  vertical-align: top;
  margin-top: 0.15em;
  color: #939BA6;
	font-family: "Material Icons";
  font-size: 1.1em;
  font-family:"Material Symbols Rounded";
	content: "\e5e1"; /*右向き矢印*/
  font-variation-settings:
  'FILL' 0,
  'wght' 200
}

/*-------------------------
記事詳細ページ
--------------------------*/
.topicsdetail {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 32px;
}
@media screen and (max-width: 640px) {
.topicsdetail {
  margin: 0 auto 64px;
  }
}
/*ページタイトル*/
.topicsdetail > h1{
  display: block !important;
  color: #222;
  font-size: 1.8em;
  font-weight: 700;
  line-height: 1.6;
  padding: 0;
}
@media screen and (max-width: 640px) {
.topicsdetail {
  padding: 0 24px;
  }
.topicsdetail > h1{
  font-size: 1.35em;
  }
}

.topicsdetail > .update{
  margin: 18px auto 42px;
}
@media screen and (max-width: 480px) {
.topicsdetail > .update{
  margin-bottom: 32px;
  font-size: 0.85em;
  }
}

/* 更新日 */
.topicsdetail > .update .date{
  display: inline-block;
  color: #888;
  line-height: 1;
  white-space: nowrap;
  letter-spacing: 0.06em;
  font-size: 1.05em;
  font-weight: 400;
  position: relative;
  padding: 0 0 0 1.6em;
  font-family: "Figtree", sans-serif;
  font-optical-sizing: auto;
  margin-right: 0.8em;
}
.topicsdetail > .update .date:before{
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.3em;
  line-height:0;
  color: #939BA6;
  font-family:"Material Symbols Rounded";
	content: "\e8b5"; /*時計*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}

/* カテゴリ */
.topicsdetail > .update .category{
  display: inline-block;
  line-height: 1;
  white-space: nowrap;
  font-size: 0.95em;
  position: relative;
  padding: 0 0 0 1.6em;
  text-decoration: none;
  color: #888;
  font-weight: 400;
}
.topicsdetail > .update .category:before{
  color: #888;
	position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 1.4em;
  line-height:0;
  color: #939BA6;
  font-family:"Material Symbols Rounded";
	content: "\ebbd"; /*フォルダ*/
  font-variation-settings:
  'FILL' 1,
  'wght' 400
}
.topicsdetail > .update .category:hover{
  text-decoration: underline;
}

/* 本文 */
.topicsdetail > p{
  font-size: 1em;
  margin: 1em 0;
  line-height: 1.8;
}


