@charset "utf-8";/*Font Awesomeの読み込み---------------------------------------------------------------------------*/@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");/*CSSカスタムプロパティ（サイト全体を一括管理する為の設定）---------------------------------------------------------------------------*/:root {--primary-color: #2674A2;			/*テンプレートのメインまたはアクセントとなる色*/--primary-inverse-color: #fff;		/*primary-colorの対として使う色*/--content-space: 1rem;  /*余白の一括管理用。2rem＝２文字分。*/}/*animation11のキーフレーム設定（汎用的）---------------------------------------------------------------------------*/@keyframes animation1 {0% {left: -200px;}100% {left: 0px;}}/*opa1のキーフレーム設定（汎用的）---------------------------------------------------------------------------*/@keyframes opa1 {0% {opacity: 0;}100% {opacity: 1;}}/*全体の設定---------------------------------------------------------------------------*/body * {box-sizing: border-box;}html,body {font-size: 16px;	/*基準となるフォントサイズ。*/}/*画面幅900px以上の追加指定*/@media screen and (min-width:900px) {html, body {font-size: 16px;	/*基準となるフォントサイズ。*/}}/*追加指定ここまで*/body {margin: 0;padding:0;-webkit-text-size-adjust: none;background: #f5f5f5;	/*背景色*/color: #333;		/*文字色*/line-height: 1.9;		/*行間*/overflow-x: hidden;}/*リセット*/figure {margin: 0;}dd {margin: 0;}nav,ul,li,ol {margin: 0;padding: 0;}nav ul {list-style: none;}/*table全般の設定*/table {border-collapse:collapse;}/*画像全般の設定*/img {border: none;max-width: 100%;height: auto;vertical-align: middle;}/*videoタグ*/video {max-width: 100%;}/*iframeタグ*/iframe {width: 100%;}/*他*/input {font-size: 1rem;}section > ol,section > ul {margin-left: 2rem;}/*section*/section:not(:first-child) {margin-top: 4rem;	/*sectionの上に4文字分のマージンを空ける*/}main section:first-child h2 {margin-top: 0;}/*リンクテキスト全般の設定---------------------------------------------------------------------------*/a {color: inherit;transition: 0.3s;	/*hoverまでにかける時間。0.3秒。*/}/*マウスオン時*/a:hover {filter: brightness(1.1);	/*少しだけ明るくする*/}/*コンテナー（サイト全体を囲むブロック）---------------------------------------------------------------------------*/#container {overflow-x: hidden;position: relative;animation: opa1 0.1s 0.3s both;  /*0.4秒待機後、0.2秒かけてフェードイン*/display: flex;flex-direction: column;min-height: 100vh;}/*画面幅600px以上の追加指定*/@media screen and (min-width:600px) {#container {max-width: 1200px;	/*サイトの最大幅。これ以上広がらない。*/margin: 0 auto;padding: 0 2rem;	/*コンテナー内の余白。上下は0で、左右に2文字分。*/}}/*追加指定ここまで*//*header（ロゴが入った最上段のブロック）---------------------------------------------------------------------------*//*ヘッダーブロック*/header a {color: inherit;}header {padding: 0rem auto;		/*ヘッダー内の余白。上下に１文字分、左右についてはcss冒頭のcontent-spaceを読み込みます。*/}/*main.jsの冒頭にある「ここがブレイクポイント指定箇所です」の行で設定しているサイズ未満の時のヘッダー右側に余白。ハンバーガーアイコンの確保。*/body.small-screen header {padding-right: 80px;}/*ロゴ（※画像の場合）*/#logo img {display: block;max-width: 80%;	/*ロゴの幅*/padding-left:1em;}/*ロゴ（※テキストの場合）*/#logo a {text-decoration: none;}#logo {width: auto;font-size: 1.4rem;	/*文字サイズ。140%*/}/*ヘッダーの右側ブロック（電話番号など）*/#header-box {font-size: 0.8rem;	/*文字サイズ80%*/}/*大きな端末・小さな端末メニュー共通---------------------------------------------------------------------------*//*英語表記（小さな文字）*/#menubar span {display: block;font-size: 0.8rem;	/*文字サイズ80%*/opacity: 0.5;		/*透明度50%*/}/*大きな端末で見たメニュー。main.jsの冒頭にある「ここがブレイクポイント指定箇所です」が基準。---------------------------------------------------------------------------*//*メニューブロック全体の設定*/.large-screen #menubar > nav > ul {display: flex;justify-content: space-between;line-height: 1.8;	  /*行間を少し狭く*/font-size: 1rem;  /*文字サイズを少し大きく*/font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "Osaka", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;	/*フォント種類（ゴシック）*/}/*メニュー１個あたりの設定*/.large-screen #menubar li {flex: 1;position: relative;	/*ドロップダウンの幅となる基準を作っておく*/text-align: center;	/*テキストをセンタリング*/}.large-screen #menubar li a {display: block;text-decoration: none;height: 100%;      /*ドロップダウンを使う場合の隙間を埋める*/padding:1em  0.5rem;	/*メニュー内の余白*/font-weight: bold;border-left: 1px solid rgba(255,255,255,0.3);  /*左の線の幅、線種、255,255,255は白の事で0.3は色が30%出た状態。*/background: var(--primary-color);	    /*背景色。冒頭のprimary-colorを読み込みます。*/color: var(--primary-inverse-color);	/*文字色。冒頭のprimary-inverse-colorを読み込みます。*/}/*大きな端末で見た場合のドロップダウンメニュー---------------------------------------------------------------------------*//*ドロップダウン全体*/.large-screen #menubar ul ul {position: absolute;z-index: 100;width: 100%;animation: opa1 0.5s 0.1s both;	/*0.1秒待機後、0.5秒かけてフェードイン表示*/}.large-screen #menubar ul ul li a {border-top: 1px solid rgba(255,255,255,0.3);  /*上の線の幅、線種、255,255,255は白の事で0.3は色が30%出た状態。*/}/*小さな端末で見たメニュー。main.jsの冒頭にある「ここがブレイクポイント指定箇所です」が基準。---------------------------------------------------------------------------*//*メニューブロック共通*/.small-screen #menubar {display: none;animation: animation1 0.2s both;position: fixed;overflow: auto;z-index: 100;right: 0px;top: 0px;width: 100%;height: 100%;padding: 50px 0 50px;		/*ブロック内の余白。上に100px、左右についてはcss冒頭のcontent-spaceを読み込む、下に50px。*/background: rgba(0,0,0,0.9);	/*背景色。0,0,0は黒の事で0.9は色が90%出た状態。*/color: #fff;					/*文字色。白。*/}/*メニュー１個あたり*/.small-screen #menubar a {display: block;text-decoration: none;color: inherit;border-bottom: 1px solid #fff;	/*枠線の幅、線種、色*/padding: 1rem 2rem;		/*メニュー内の余白。上下に１文字分、左右に２文字分。*/}/*子メニュー（ドロップダウンメニュー）*/.small-screen #menubar ul ul a {border: none;padding: 0;margin-left: 3.8rem;	/*左に空けるスペース*/}/*ドロップダウンのアイコン*/a.ddmenu::before {font-family: "Font Awesome 6 Free";font-weight: bold;content: "\f078";	/*このアイコンを使う*/margin-right: 0.5em;	/*アイコンとメニューテキストとの間に空けるスペース。0.5文字分。*/display: inline-block;transform: scale(0.7);}/*３本バー（ハンバーガー）アイコン設定---------------------------------------------------------------------------*/#menubar_hdr {display: none; /* デフォルトは非表示 */animation: opa1 0s 0s both;position: fixed;z-index: 101;cursor: pointer;right: 0px;	      /*右からの配置場所*/top: 0px;	        /*上からの配置場所*/width: 70px;	    /*ボタンの幅*/height: 70px;	    /*ボタンの高さ*/background: #333;	/*ボタン色*/border-radius: 0px 0px 0px 0px;	/*角を丸くする指定。左上、右上、右下、左下の順番。この場合は左下だけ角を丸くする。*/transform-origin: right top;transform: scale(1);	/*大きさを調整したい場合はここの「1」を変更します。1.2や0.7など。*/}/*バツ印が出ている時のボタン色*/#menubar_hdr.ham {background: #ff0000;}/*ハンバーガーアイコンの線*/#menubar_hdr span {display: block;position: absolute;left: 18px;width: 35px;height: 2px;		/*線の高さ*/background: #fff;	/*線の色*/transition: 0.3s;}#menubar_hdr span:nth-of-type(1) {top: 24px;}#menubar_hdr span:nth-of-type(2) {top: 34px;}#menubar_hdr span:nth-of-type(3) {top: 44px;}/* ハンバーガーメニュー展開時 */#menubar_hdr.ham span:nth-of-type(1) {transform: translateY(10px) rotate(-45deg);}#menubar_hdr.ham span:nth-of-type(2) {opacity: 0;}#menubar_hdr.ham span:nth-of-type(3) {transform: translateY(-10px) rotate(45deg);}/*小さな画面での設定*/.small-screen #menubar_hdr {display: flex;}/*コンテンツ---------------------------------------------------------------------------*//*コンテンツブロック*/#contents {flex: 1;background: #fff;	/*背景色*/color: #555;		/*文字色*/}/*画面幅600px以上の追加指定*/@media screen and (min-width:600px) {#contents {box-shadow: 0px 0px 10px rgba(0,0,0,0.2);	/*ボックスの影。右に、下に、広げる幅、0,0,0は黒の事で0.2は色が20%出た状態。。*/border-radius: 5px 10px 0px 0px;	/*角丸のサイズ。左上、右上、右下、左下への順番。*/overflow: hidden;}}/*追加指定ここまで*//*メインコンテンツ---------------------------------------------------------------------------*//*メインコンテンツ*/main {padding: var(--content-space);	/*section内にとる余白。冒頭のcontent-spaceを読み込みます。*/}/*h2見出し*/main h2 {border-top: 3px solid var(--primary-color);  /*上の線の幅、線種、var以降は色のことで、冒頭のprimary-colorを読み込みます。*/box-shadow: 0px 0px 0.5rem rgba(0,0,0,0.2);  /*見出しの影。右へ、下へ、ぼかす量、0,0,0は黒の事で0.2は色が20%出た状態。*/padding: 0.3rem 1rem;  /*見出し内の余白。上下に0.3文字分、左右に1文字分。*/background: linear-gradient(transparent, rgba(0,0,0,0.03));/*背景グラデーション。透明から黒(0,0,0)を3%だけ出した状態へのグラデ。*/}/*h2見出し。両サイドに斜めのラインタイプ*/main h2.line {background: none;  /* 背景なし */border: none;      /* 線なし */box-shadow: none;  /* 影なし */color: var(--primary-color);  /* 文字色。冒頭のprimary-colorを読み込みます */position: relative;text-align: center;      /* 文字を中央に */width: fit-content;      /* 文字 + padding 分だけの幅にする */padding: 0.2em 1.5em;    /* 文字と線の間隔 */margin: 0 auto 2em;      /* 中央に */}/*ライン共通*/main h2.line::before, main h2.line::after {content: "";position: absolute;bottom: 10%;  /* 下から10%。お好みで。 */height: 70%;  /* 高さ70%。お好みで。 */width: 2px;  /* 線の幅。お好みで。 */}/*左側のライン*/main h2.line::before {left: 0px;  /*左側に配置*/border-left: 1px solid var(--primary-color);  /*線の幅、線種、var以降は色のことで、冒頭のprimary-colorを読み込みます。*/transform: rotate(-15deg);  /*左に15度傾ける。お好みで。*/}/*右側のライン*/main h2.line::after {right: 0px;   /*右側に配置*/border-right: 1px solid var(--primary-color);  /*線の幅、線種、var以降は色のことで、冒頭のprimary-colorを読み込みます。*/transform: rotate(15deg);  /*右に15度傾ける。お好みで。*/}/*h3見出し*/main h3 {padding: 0 1rem;  /*見出し内の余白。、左右にのみ1文字分。*/}/*p（段落タグ）*/p {margin-left: 1rem;	/*左に１文字分のスペース*/margin-right: 1rem;	/*右に１文字分のスペース*/}/*フッター---------------------------------------------------------------------------*/footer * {margin: 0;padding: 0;}footer ul {list-style: none;}/*ブロック全体*/footer {background: #ccc;	/*背景色*/color: #555;		/*文字色*/padding: var(--content-space);	/*フッター内の余白。css冒頭のcontent-spaceを読み込みます。*/}/*ロゴやSNSアイコンが入ったブロック*/footer div.footer-left {flex: 1;display: flex;flex-direction: column;gap: 1rem;	/*このブロック内のボックス同士の間に空ける余白。1文字分。*/}/*メニューブロック*/footer div.footer-right {flex: 1;}/*フッターのロゴ*/footer .logo {width: 300px;}/*画面700px以上の追加指定*/@media screen and (min-width:700px) {footer {display: flex;gap: 2rem;		/*ロゴのブロックとメニューのブロックとの間の余白。2文字分。*/}/*ロゴやSNSアイコンが入ったブロック*/footer div.footer-left {text-align: center;width: 100%;	/*幅。40%。*/}}/*追加指定ここまで*//*Copyright部分*/footer small {display: block;margin-top: 2rem;text-align: center;}/*Google Map用---------------------------------------------------------------------------*/.iframe-box1 {width: 100%;height: 0;padding-top: 56.25% !important;	/*マップの高さを増やしたい場合は、ここの数値を上げてみて下さい。*/position: relative;overflow: hidden;}.iframe-box1 iframe {position: absolute;left: 0px;top: 0px;width: 100%;height: 100%;}/*SNSアイコン---------------------------------------------------------------------------*/.sns1 {list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: 1rem;		/*アイコン同士のマージン的な要素。１文字分。*/}.sns1 i {font-size: 30px;	/*アイコンサイズ*/}/*Google Map用---------------------------------------------------------------------------*/.iframe-box1 {width: 100%;height: 0;padding-top: 56.25% !important;	/*マップの高さを増やしたい場合は、ここの数値を上げてみて下さい。*/position: relative;overflow: hidden;}.iframe-box1 iframe {position: absolute;left: 0px;top: 0px;width: 100%;height: 100%;}/*テーブル---------------------------------------------------------------------------*/.week2 {width: 100%;border-collapse: separate;border-spacing: 0;border: 1px solid #ccc;	/*テーブル外側の線の幅、線種、色*/table-layout: fixed;	/*幅を均等に*/background: #fff;		/*テーブル全体の背景色*/color: #555;			/*テーブル全体の文字色*/}/*受付時間の幅*/.week2 th:first-child,.week2 td:first-child {width: 25%;}/*各曜日の幅*/.week2 th:not(:first-child),.week2 td:not(:first-child) {width: calc(75% / 7);	/*受付時間で25%とっているので残りの75%を7で割る*/}/*th(曜日)とtd(時間)*/.week2 th,.week2 td {text-align: center;	/*テキストをセンタリング*/border-bottom: 1px solid #ccc;	/*下の線の幅、線種、色*/border-right: 1px solid #ccc;	/*右の線の幅、線種、色*/}/*th(曜日)とtd(時間)のそれぞれ最後の右側の線を消す*/.week2 th:last-child,.week2 td:last-child {border-right: none;}/*最後の行の下線を消す*/.week2 tr:last-child td {border-bottom: none;}/*th(曜日)の追加指定*/.week2 th {background: #fafafa;	/*背景色*/}.week2 td {border-bottom: 1px solid #ccc;	/*下の線の幅、線種、色*/}/*お知らせブロック---------------------------------------------------------------------------*/.new {margin-left: 1rem;	/*左に１文字分のスペース*/margin-right: 1rem;	/*右に１文字分のスペース*/}/*記事の下に空ける余白*/.new dd {padding-bottom: 1rem;}/*ブロック内のspan。日付の横のアイコン的な部分の共通設定*/.new dt span {display: inline-block;text-align: center;line-height: 1.8;		  /*行間（アイコンの高さ）*/border-radius: 3px;		/*角を丸くする指定*/padding: 0 1rem;		  /*上下、左右へのブロック内の余白*/width: 6rem;			    /*幅。６文字分。*/transform: scale(0.8);	/*80%のサイズに縮小*/background: #999;		  /*背景色*/color:#fff;				    /*文字色*/}/*icon-bg1*//*icon-bg1*/.new .icon-bg1 {background: #ff0000;  /*背景色*/color: #fff;          /*文字色*/}/*icon-bg2*/.new .icon-bg2 {background: var(--primary-color);	    /*背景色。冒頭のprimary-colorを読み込みます。*/color: var(--primary-inverse-color);	/*文字色。冒頭のprimary-inverse-colorを読み込みます。*/}/*画面幅700px以上の追加指定*/@media screen and (min-width:700px) {/*ブロック全体*/.new {display: grid;grid-template-columns: auto 1fr;	/* 日付とアイコン部分の幅は自動で、内容が入るブロックは残り幅一杯とる。 */}}/*追加指定ここまで*//*横長タイプのボックス（list-normal1）---------------------------------------------------------------------------*/.list-normal1 .list * {margin: 0;padding: 0;}/*ブロック全体を囲むボックス*/.list-normal1 {display: flex;flex-direction: column;gap: 1rem;  /*各ボックス同士に空けるスペース。１文字分。*/}/*ボックス１個あたり*/.list-normal1 .list {display: flex;padding: 1rem;	/*ボックス内の余白*/position: relative;border: 1px solid #ccc;  /*枠線の幅、線種、色*/border-radius: 5px;      /*角を少しだけ丸くする指定*/}/*ボックス内のdiv*/.list-normal1 .list div {flex: 1;}/*ボックス内のfigure画像*/.list-normal1 .list figure {width: 20%;			    /*画像の幅*/margin-right: 1rem;	/*画像の右側に空けるスペース*/}/*ボックス内のpタグ*/.list-normal1 .list p {font-size: 0.8rem;		/*文字サイズを80%に。*/}/*list内のtableっぽく見える所---------------------------------------------------------------------------*//*tableっぽく見えるボックス全体*/dl.table {display: grid;						/*gridボックスを使う指定*/grid-template-columns: auto 1fr;  /*「所在地」「価格」などの見出しの幅は内容に応じて自動、残りを右側に割り当て*/font-size: 0.8rem;		/*文字サイズを80%に。*/border-top: 1px solid #ccc;			/*上の線の幅、線種、色*/}/*画面幅600px以上の追加指定*/@media screen and (min-width:600px) {dl.table {grid-template-columns: repeat(2, auto 1fr);	/*２列にする（各ボックスは、左は内容に応じて自動、残りを右側に割り当て）*/}}/*追加指定ここまで*//*見出しと説明共通設定*/dl.table dt, dl.table dd {border-bottom: 1px solid #ccc;	/*枠線の幅、線種、色*/padding: 0 0.5rem !important;		/*上下、左右への余白*/}/*見出しだけの設定*/dl.table dt {background: #eee;	/*背景色*/}/*詳細ページ（article内）で使う場合の上書き*/article dl.table {font-size: 1rem;  /*文字サイズを通常に戻す*/}article dl.table dt, article dl.table dd {padding: 0.5rem 1rem !important;				/*上下、左右への余白*/}/*横並びブロック（list-grid1）---------------------------------------------------------------------------*/.list-grid1 .list * {margin: 0;padding: 0;}/*ブロック全体を囲むブロック*/.list-grid1 {display: grid;grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));  /*横並びにリピート。各ボックスの最低幅220px。余った幅は均等に分割。*/gap: 1rem;}/*カラム固定で使いたい場合用*/.list-grid1.fix-col {grid-template-columns: repeat(4, 1fr);  /*4列*/}/*カラム固定で使いたい場合用。画面幅1000px未満（main.jsの最後にある「画面幅1000px未満でclassの付け外し」で画面幅を判断してclassの付与を行っています）*/.list-grid1.fix-col.window-s {grid-template-columns: repeat(2, 1fr);  /*2列*/}/*ボックス１個あたり*/.list-grid1 .list {display: grid;position: relative;overflow: hidden;padding: 1rem;			/*ボックス内の余白。１文字分。*/grid-template-rows: auto 1fr;	/*１つ目（この場合はfigureのサイズ）は自動に、２つ目（この場合はtextブロック））を残った幅で使う*/border: 1px solid #ccc;  /*枠線の幅、線種、色*/border-radius: 5px;      /*角を少しだけ丸く*/}/*ボックス内のfigure画像*/.list-grid1 .list figure img {margin-bottom: 0.5rem;	/*画像の下に空けるスペース。0.5文字分。*/}/*ボックス内のp要素*/.list-grid1 .list p {font-size: 0.8rem;	/*文字サイズを80%に。*/line-height: 1.5;	  /*行間を少し狭く*/}/*「NEW」と「UP」アイコン---------------------------------------------------------------------------*/.list {overflow: hidden;}/*「NEW」と「UP」共通*/.list.new-icon::before,.list.up-icon::before {width: 70px;height: 70px;position: absolute;top: -35px;left: -35px;z-index: 1;transform: rotate(-45deg);display: flex;align-items: flex-end;justify-content: center;font-size: 11px;  /*文字サイズ*/box-shadow: 0 2px 5px rgba(0,0,0,0.2);  /*影*/}/*「NEW」の設定*/.list.new-icon::before {content: "NEW";  /*この文字を出す*/background: #ff0000;  /*背景色*/color: #fff;    /*文字色*/}/*「UP」の設定*/.list.up-icon::before {content: "UP";  /*この文字を出す*/background: #377eff;  /*背景色*/color: #fff;    /*文字色*/}/*「新築」や「角部屋」などの汎用的な水色アイコン---------------------------------------------------------------------------*//*アイコン全体を囲むブロック*/ul.list-icons {list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: 0.2rem;  /*アイコン同士に空けるスペース。0.2文字分。*/font-size: 0.8rem;  /*文字サイズ80%*/margin-bottom: 0.2rem !important;  /*アイコンブロックの下にとるスペース。0.2文字分。*/line-height: 1;  /*行間を狭く*/}/*アイコン１個あたり*/ul.list-icons li {border: 1px solid #74bef8;  /*枠線の幅、線種、色*/background: #e2f2ff;        /*背景色*/padding: 0.2rem !important;  /*余白。0.2文字分*/}/*詳細ページ（article内）で使う場合の上書き*/article ul.list-icons {font-size: 1rem;}/*ページャー---------------------------------------------------------------------------*/.pager {text-align: center;margin-top: 2rem;display: flex;justify-content: center;flex-wrap: wrap;gap: 5px;}/*余白の一括管理*/.pager a,.pager span {padding: 0.5rem 1rem;border: 1px solid #ccc;}.pager a {text-decoration: none;}.pager a:hover {border: 1px solid #333;}/*最初と最後のボタン*/.pager span:first-child,.pager span:last-child {color: #333;border: 1px solid #ccc;background: #fff;}/*リンクのないボタン*/.pager span {color: #999;border: 1px solid #ccc;background: #f0f0f0;}/*詳細ページのサムネイル切り替えブロック---------------------------------------------------------------------------*//*大きな画像が表示されるブロック*/.thumbnail-view {max-width: 1000px;  /*最大幅。もし画面幅に合わせて100%にしたいなら、width: 100%に変更してください。*/margin: 0 auto 1rem;text-align: center;}/*サムネイル全体を囲むブロック*/.thumbnail {display: flex;flex-wrap: wrap;justify-content: center;margin-bottom: 2rem;}/*サムネイル画像・動画*/.thumbnail img,.thumbnail video {width: 100px;  /*サムネイルの幅*/margin: 2px;cursor: pointer;transition: 0.3s;background: #000;}/*マウスオン時に色を80%にする*/.thumbnail img:hover,.thumbnail video:hover {opacity: 0.8;}/* 大きな表示の中身（画像・動画） */.thumbnail-view img,.thumbnail-view video {max-width: 100%;height: auto;display: block;margin: 0 auto;}/* 動画サムネ用ラッパ＆アイコン */.thumbnail .thumb-wrap {position: relative;display: inline-block;width: 100px;      /* 既存サムネ幅と合わせる */margin: 2px;       /* 既存サムネ間隔と合わせる */}.thumbnail .thumb-wrap > video {width: 100%;height: auto;display: block;margin: 0;         /* 二重余白を防止 */}.thumbnail .thumb-play {position: absolute;inset: 0;display: grid;place-items: center;pointer-events: none;      /* クリックは下のvideoに通す */opacity: 0.9;text-shadow: 0 1px 2px rgba(0,0,0,.35);}/*動画サムネの上のアイコン*/.thumbnail .thumb-play i {background: #ff0000;  /*背景色*/color: #fff;          /*文字色*/border-radius: 9999px;padding: 6px 8px;font-size: 12px;line-height: 1;}/*トップページのサムネイルの横スライドショー---------------------------------------------------------------------------*/.slide-thumbnail * {margin: 0;padding: 0;}/*スライドショー全体を囲むブロック*/.slide-thumbnail {overflow-x: hidden;position: relative;}/*リンクテキスト*/.slide-thumbnail a {text-decoration: none;color: inherit;}/*１個あたりのボックスの設定と、4列配置する為の指示*/.slide-thumbnail .img > div {flex: 0 0 24%;			/*４枚表示する為には25%指定だが、左右のマージン分（計1%）を差し引く。*/max-width: 24%;			/*上記と同じ内容だが念の為追加*/margin: 0 0.5%;			  /*上下、左右へのマージン*/}/*画面幅800px以下の追加指定*/@media screen and (max-width:800px) {/*2列配置に変更する*/.slide-thumbnail .img > div {flex: 0 0 48%;max-width: 48%;}}/*追加指定ここまで*//*画像たちを囲むブロック*/.slide-thumbnail .img {display: flex;}/*画像*/.slide-thumbnail .img img {width: 100%;}/*段落タグ(p)*/.slide-thumbnail p {font-size: 0.85rem;	/*文字サイズを85%に*/line-height: 1.5;	/*行間をデフォルトより狭く*/}/*2カラム（main-contents、sub-contents設定）---------------------------------------------------------------------------*//*main-contentsブロック*/.main-contents {margin-bottom: var(--content-space);	/*ボックスの下に空けるスペース。冒頭のcontent-spaceを読み込みます。*/}/*sub-contentsブロック*/.sub-contents {order: -1;  /*サブブロックを左に配置*/}/*サブコンテンツ内のh3要素(見出し)*/.sub-contents h3 {margin: 0;padding: 0;font-size: 1rem;margin-bottom: 0.5rem;}.sub-contents h3::first-letter {border-left: 3px solid var(--primary-color);	/*左側のアクセント用ラインの幅、線種、色*/padding-left: 10px;}.sub-contents p {margin-left: 0;margin-right: 0;}/*画面幅900px以上の追加指定*/@media screen and (min-width:900px) {/*カラムで使う為の指定*/main.column {display: flex;		/*横並びにする*/justify-content: space-between;gap: var(--content-space);	/*ボックスの下に空けるスペース。冒頭のcontent-spaceを読み込みます。*/}/*main-contentsブロック*/.main-contents {margin-bottom: 0;flex: 1;}/*sub-contentsブロック共通*/.sub-contents {width: 210px;	/*幅。お好みで変更して下さい。*/}}/*追加指定ここまで*//*サブメニュー設定---------------------------------------------------------------------------*/.submenu * {margin: 0;padding: 0;}/*サブメニューブロック全体*/.submenu {padding: 0;margin: 0 0 1rem;	/*上、左右、下へのマージン*/border-top: 1px solid #ccc;	/*上の枠線の幅、線種、色*/}/*メニュー１個あたり*/.submenu a {display: block;text-decoration: none;padding: 0.2rem 1rem;	/*上下、左右へのメニュー内の余白*/background: #fff;	/*背景色*/}/*メニュー１個あたり（子メニュー以外）*/.submenu > li {border: 1px solid #ccc;	/*枠線の幅、線種、色*/border-top: none;		/*上の線だけなくす*/}/*子メニュー*/.submenu li li a {padding-left: 2rem;	/*左に余白を空ける*/}/*著作部分（※意図的に見えなくしたりしないで下さい。規約違反になります。）---------------------------------------------------------------------------*/.pr a {text-decoration: none;display: block;background: #555;color: #ccc;text-align: right;padding: 0.5rem 1rem;font-size: 0.8rem;}.pr a::before {font-family: "Font Awesome 6 Free";content: "\e2ca";font-weight: bold;margin-right: 0.5em;}/*テーブル（ta1）---------------------------------------------------------------------------*//*テーブル１行目に入った見出し部分（※caption）*/.ta1 caption {font-weight: bold;		/*太字に*/padding: 0.2rem 1rem;		/*ボックス内の余白*/background: #555;	/*背景色*/color: #fff;			/*文字色*/margin-bottom: 1rem;	/*下に空けるスペース*/border-radius: 5px;		/*角を丸くする指定*/}/*ta1テーブルブロック設定*/.ta1 {table-layout: fixed;border-top: 1px solid #999;	/*テーブルの一番上の線。幅、線種、色*/margin-bottom: 2rem;		/*テーブルの下に空けるスペース。２文字分。*/}/*tr（１行分）タグ設定*/.ta1 tr {border-bottom: 1px solid #999;	/*テーブルの下線。幅、線種、色*/}/*th（左側）、td（右側）の共通設定*/.ta1 th, .ta1 td {padding: 1rem;		/*ボックス内の余白*/word-break: break-all;	/*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/}/*th（左側）のみの設定*/.ta1 th {width: 30%;			/*幅*/text-align: left;	/*左よせにする*/background: #f0f0f0;	/*背景色*/}/*画面幅900px以上の追加指定*/@media screen and (min-width:900px) {/*th（左側）のみの設定*/.ta1 th {width: 20%;		/*幅*/}}/*追加指定ここまで*//*PAGE TOP（↑）設定---------------------------------------------------------------------------*/.pagetop-show {display: block;}/*ボタンの設定*/.pagetop a {display: block;text-decoration: none;text-align: center;z-index: 99;animation: opa1 0s 0.4s both;position: fixed;	/*スクロールに追従しない(固定で表示)為の設定*/right: 20px;		/*右からの配置場所指定*/bottom: 20px;		/*下からの配置場所指定*/color: #fff;		/*文字色*/font-size: 1.5rem;	/*文字サイズ*/background: rgba(0,0,0,0.5);	/*背景色。0,0,0は黒の事で0.2は色が20%出た状態。*/width: 40px;		/*幅*/line-height: 40px;	/*高さ*/border-radius: 10%;	/*円形にする*/}/*その他---------------------------------------------------------------------------*/.clearfix::after {content: "";display: block;clear: both;}.color-check, .color-check a {color: #ff0000 !important;}.l {text-align: left !important;}.c {text-align: center !important;}.r {text-align: right !important;}.ws {width: 95%;display: block;}.wl {width: 95%;display: block;}.mb0 {margin-bottom: 0px !important;}.mb3rem {margin-bottom: 3rem !important;}.mb30 {margin-bottom: 30px !important;}.look {display: inline-block;padding: 0px 10px;background: #eee;border: 1px solid #ccc; color: #888; border-radius: 3px;margin: 5px 0; word-break: break-all;}.small {font-size: 0.75em;}.large {font-size: 1.5em;}.block {display: block !important;}/*  Greeting----------------------------------------------------*/#gre_area{display:flex;justify-content: flex-first;align-items: flex-end;margin-bottom:2em;}@media(max-width:768px){#gre_area{flex-wrap: wrap;}}img.greeting{min-width: 110px;max-width: 50%;border-radius: 4px;order:1;margin-right:1em;}/* スクリーンサイズが768px以下の場合に適用 */@media(max-width:768px){img.greeting{order: 1;margin: 0 auto 0;max-width: 50%;}}.gre_dl{text-align: left;order: 1;justify-content: center;margin-right: 1em;}/* スクリーンサイズが768px以下の場合に適用 */@media(max-width:768px){.gre_dl{width:100%;text-align: center;order: 2;margin-right: 0;}}.gre_dl strong{font-size:1.7rem;}