<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/*//////////////////////////////////////////////////////////////////////////////

	共通

//////////////////////////////////////////////////////////////////////////////*/


/*------------------------------------------------------------------------------

	変数

------------------------------------------------------------------------------*/

:root {
	/* ★common.css ＝ editor.css★ */
	--main-color: 8,97,105;
	--sub-color: 36,35,54;
	--accent-color: 20,0,85;
}


/*------------------------------------------------------------------------------

	image replacement

------------------------------------------------------------------------------*/

#content &gt; header h1.logo,
#content &gt; header p.logo a,
.search_form .button {
	display: block;
	overflow: hidden;
	outline: none;
	clear: both;
	text-indent: -9999px;
	white-space: nowrap;
	background-repeat: no-repeat;
	background-size: contain;
	border: none;
}


/*------------------------------------------------------------------------------

	全体

------------------------------------------------------------------------------*/

/*	site_column
------------------------------------------------------------------------------*/

.site_column {
	position: relative;
	margin: 0 auto;
	width: 86%;
	max-width: 1400px;
}


/*	body・textarea・input
------------------------------------------------------------------------------*/

body,
textarea,
input,
select {
	/* ★common.css ＝ editor.css★ */
	line-height: 1.8;
	font-family: YuGothic,"游ゴシック","メイリオ",Meiryo,sans-serif,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,verdana,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	font-size: 16px;
	font-weight: 500;
	color: rgba(35,35,0,1);
  	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
}

textarea,
input,
select {
	-webkit-appearance: none;
}

@media screen and (max-width: 1024px) {

body,
textarea,
input  {
	/* ★common.css ＝ editor.css★ */
	font-size: 14px;
}

}

@media screen and (max-width: 810px) {

body,
textarea,
input {
	/* ★common.css ＝ editor.css★ */
	font-size: 3.2vw;
}

}


/*	見出し
------------------------------------------------------------------------------*/

h1,h2,h3,h4,h5,h6 {
	line-height: 1.4;
}

/*	アンカー
------------------------------------------------------------------------------*/

a,
a:hover,
a:visited {
	outline: none;
	text-decoration: none;
	color: rgba(var(--main-color),1);
}

a {
	word-break: break-all;
	transition: opacity .4s;
}

a:hover {
	text-decoration: none;
	opacity: .4;
	transition: color .4s;
}

main a,
main a:visited {
	text-decoration: underline;
}

@media screen and (max-width: 810px) {

a:hover {
	opacity: 1;
}

a[href^="tel:"] {
	text-decoration: underline;
}

}

@media screen and (min-width: 768px){

a[href^="tel:"] {
	pointer-events: none;
	text-decoration: none;
	color: #333;
}

a[href^="tel:"]:hover {
	cursor: default;
	opacity: 1;
}

}


/*	リスト
------------------------------------------------------------------------------*/

main ol,
main ul {
	margin: 1em 0 1em 1.5em;
}

main ul {
	list-style: disc;
}

main ol {
	list-style: decimal;
}

main li {
	margin-bottom: .5em;
	line-height: 1.4;
}


/*	テーブル
------------------------------------------------------------------------------*/

table {
	width: 100%;
}

th,
td {
	line-height: 1.6;
}

th {
	font-weight: bold;
}


/*	その他
------------------------------------------------------------------------------*/

em {
	font-style: normal;
}

figcaption {
	margin-top: .5em;
	text-align: center;
	font-size: .875em;
}

img {
	vertical-align: bottom;
}

address {
	font-style: normal;
}


/*	共通設定
------------------------------------------------------------------------------*/

main p,
main dd {
	margin-bottom: .5em;
	text-align: justify;
}

main li:last-child,
main p:last-of-type,
main dd:last-of-type {
	margin-bottom: 0;
}


/*	独自class
------------------------------------------------------------------------------*/

.note {
	margin-left: 0;
}

.note li {
	display: block;
	position: relative;
	padding-left: 1em;
	font-size: .875em;
}

.note li::before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.l {
	display: block;
}

#noscript {
	padding: 1em;
	line-height: 1;
	text-align: center;
	color: #FFF;
	background-color: #F00;
}

@media screen and (max-width: 810px) {

.l {
	display: inline;
}

}

/*------------------------------------------------------------------------------

	検索ボタンデザイン

------------------------------------------------------------------------------*/

.search_form {
	position: relative;
	width: max-content;
	margin-right: 1em;
}

.search_form .box {
	width: 17em;
	padding: .25em 3em .25em 1em;
	border: 1px solid rgba(51,51,51,1.00);
}

.search_form .button {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
	width: 1.35em;
	height: 1.35em;
	padding: 0;
	background-image: url("../img/icon_search_k.svg");
	background-repeat: no-repeat;
	background-size: 100%;
	background-color: transparent;
}

@media screen and (max-width: 1500px) {

.search_form .box {
	padding: .25em 2em .25em .8em;
	font-size: .875em;
}

.search_form .button {
	right: .5em;
}

}

@media screen and (max-width: 810px) {

.search_form .box {
	width: 20em;
}

}



/*------------------------------------------------------------------------------

	header

------------------------------------------------------------------------------*/

#content &gt; header h1.logo,
#content &gt; header p.logo a {
	display: block;
	width: 380px;
	height: 99px;
	background-image: url(../img/logo.png);
	background-repeat: no-repeat;
}

#content &gt; header &gt; .site_column {
	display: flex;
	width: 92%;
	justify-content: space-between;
	align-items: center;
	margin-top: 1em;
}


@media screen and (max-width: 1500px) {

#content &gt; header h1.logo,
#content &gt; header p.logo a {
	width: 265px;
	height: 69px;
}

}

@media screen and (max-width: 1024px) {

#content &gt; header h1.logo,
#content &gt; header p.logo a {
	width: 200px;
	height: 52px;
}

}

@media screen and (max-width: 810px) {

#content &gt; header &gt; .site_column {
	width: 90%;
	margin: 3vw auto;
}

#content &gt; header h1.logo,
#content &gt; header p.logo a {
	width: 60vw;
	height: 15.6vw;
}

}

/*------------------------------------------------------------------------------

	menu

------------------------------------------------------------------------------*/

/*	メニュー本体開閉CSS
　　スマホサイズでcloseした時のdisplay:none を、再びPCサイズにした時、
　　非表示になるのを回避
------------------------------------------------------------------------------*/

#content &gt; header .menu .gnav &gt; ul {
	position: relative;
}

#content &gt; header .menu .gnav &gt; ul &gt; li .child {
	display: none;
	position: absolute;
	width: 89.2%;
	top: 2.7em;
	left: 10.9%;
	z-index: 9999;
	cursor: auto;
}

#content &gt; header .menu .gnav &gt; ul &gt; li .child.show {
	display: block;
}

@media screen and (max-width: 1300px) {

#content &gt; header .menu .gnav &gt; ul &gt; li .child {
	width: 89%;
	left: 11%;
}

}

@media screen and (max-width: 1100px) {

#content &gt; header .menu .gnav &gt; ul &gt; li .child {
	width: 89.5%;
	left: 10.55%;
}

}

@media screen and (max-width: 900px) {

#content &gt; header .menu .gnav &gt; ul &gt; li .child {
	width: 100%;
	left: 0;
}

}

@media screen and (min-width: 811px) {

#content &gt; header .menu {
	display: flex !important;
}

}

@media screen and (max-width: 810px) {

#content &gt; header .menu {
	display: none;
}

#content &gt; header .menu .gnav &gt; ul &gt; li .child {
	display: block;
	position: static;
}

}


/*	メニュー本体
------------------------------------------------------------------------------*/

#content &gt; header .menu {
	flex-direction: column-reverse;
	align-items: flex-end;
}

#content &gt; header .menu .gnav &gt; ul,
#content &gt; header .menu .pnav &gt; ul {
	display: flex;
	align-items: center;
}

#content &gt; header .menu .gnav &gt; ul {
	margin-top: 2em;
	border-bottom: 1px solid #FFF;
}

#content &gt; header .menu .gnav &gt; ul &gt; li:not(:first-child) {
	margin-left: 1px;
}

#content &gt; header .menu .gnav &gt; ul &gt; li {
	font-weight: bold;
	font-size: 1.2em;
}

#content &gt; header .menu .pnav .member {
	font-weight: bold;
	font-size: 1.125em;
}

#content &gt; header .menu .gnav &gt; ul &gt; li &gt; a,
#content &gt; header .menu .gnav &gt; ul &gt; li &gt; em {
	display: block;
	padding: .85em 1em;
	background-color: rgba(57,55,89,1);
	color: #FFF;
	line-height: 1;
}

#content &gt; header .menu .gnav &gt; ul &gt; li.active {
	background-color: rgba(var(--main-color),.2);
}

#content &gt; header .menu .gnav &gt; ul &gt; li.active &gt; a,
#content &gt; header .menu .gnav &gt; ul &gt; li.active &gt; em {
	background-color: transparent;
	color: inherit;
}

#content &gt; header .menu .gnav &gt; ul &gt; li:hover {
	background-color: rgba(var(--main-color),.2);
	cursor: pointer;
}

#content &gt; header .menu .gnav &gt; ul &gt; li a:hover {
	opacity: 1;
}

#content &gt; header .menu .gnav .home {
	 font-family: 'Urbanist', sans-serif;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner {
	display: flex;
	padding: 2em;
	background-color: #fff;
	border: 10px solid rgba(var(--main-color),.2);
	align-items: flex-start;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul {
	order: 2;
	flex: 1;
	display: flex;
	flex-wrap: wrap;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li {
	width: 30%;
	margin-right: 5%;
	margin-top: 2%;
	line-height: 1.4;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(-n+3) {
	margin-top: 0;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(3n) {
	margin-right: 0;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li a {
	display: inline-flex;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: .5em 0 .8em;
	font-size: .875em;
	color: rgba(var(--main-color),1);
	font-weight: normal;
	background-image : linear-gradient(to right, rgba(var(--sub-color),.5), rgba(var(--sub-color),.5) 3px, transparent 3px, transparent 6px);  /* 幅2の線を作る */
	background-size: 6px 1px;          /* グラデーションの幅・高さを指定 */
	background-position: left bottom;  /* 背景の開始位置を指定 */
	background-repeat: repeat-x;       /* 横向きにのみ繰り返す */
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li a:hover {
	opacity: .4;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner figure {
	width: 25%;
	max-width: 185px;
	margin-right: 2em;
	order: 1;
	position: relative;
	aspect-ratio: 200 / 147;
}

#content &gt; header .menu .gnav &gt; ul li.about .child figure img {
	position: absolute;
	width: 50%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#content &gt; header .menu .gnav &gt; ul li.about .child figure::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(var(--main-color),.4);
	z-index: 0;
}

#content &gt; header .menu .gnav &gt; ul li:not(.about) .child figure::after {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(var(--main-color),.4);
	mix-blend-mode: multiply;
}

#content &gt; header .menu .pnav .en,
#content &gt; header .menu .pnav .sitemap {
	 font-family: 'Urbanist', sans-serif;
}

#content &gt; header .menu .pnav .en {
	margin-right: 1.2em;
}

#content &gt; header .menu .pnav .sitemap {
	margin-right: 1.8em;
}

#content &gt; header .menu .pnav a {
	display: block;
}

#content &gt; header .menu .pnav .en a,
#content &gt; header .menu .pnav .sitemap a {
	background-repeat: no-repeat;
	background-size: 1.8em;
	background-position: left center;
	color: rgba(var(--sub-color),1);
}

#content &gt; header .menu .pnav .en a {
	padding: .5em 0 .5em 2.3em;
	background-image: url("../img/icon_balloon_k.svg");
	background-size: 1.8em;
}

#content &gt; header .menu .pnav .sitemap a {
	padding: .5em 0 .5em 1.8em;
	background-image: url("../img/icon_folder_k.svg");
	background-size: 1.3em;
}

#content &gt; header .menu .pnav .member a {
	height: 100%;
	padding: .8em 2em;
	background-color: rgba(var(--main-color),1);
	color: #FFF;
}

#content &gt; header .menu .pnav .member a span {
	padding-left: 1.5em;
	background-color: rgba(var(--main-color),1);
	background-image: url("../img/icon_lock_w.svg");
	background-size: 1.2em;
	background-position: center left;
	background-repeat: no-repeat;
}

@media screen and (max-width: 1500px) {

#content &gt; header .menu .gnav &gt; ul &gt; li,
#content &gt; header .menu .pnav .member {
	font-size: 1em;
}

#content &gt; header .menu .pnav .search_form .box {
	width: 13em;
}

}

@media screen and (max-width: 1100px) {

#content &gt; header .menu .gnav &gt; ul &gt; li {
	font-size: .875em;
}

#content &gt; header .menu .gnav &gt; ul &gt; li &gt; a,
#content &gt; header .menu .gnav &gt; ul &gt; li &gt; em {
	padding-right: .75em;
	padding-left: .75em;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li {
	width: 48%;
	margin-right: 4%;
	margin-top: 4%;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(3) {
	margin-top: 4%;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(3n) {
	margin-right: 4%;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(2n) {
	margin-right: 0;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner dd:nth-child(3) {
	margin-right: 1.5em;
}

}

@media screen and (max-width: 1024px) {

#content &gt; header .menu .gnav &gt; ul &gt; li {
	font-size: 1em;
}

}

@media screen and (max-width: 900px) {

#content &gt; header .menu .gnav &gt; ul &gt; li {
	font-size: .9em;

}

}

@media screen and (max-width: 810px) {
	
#content &gt; header .menu {
	overflow-y: scroll;
	position: fixed;
	flex-direction: column;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	padding-bottom: 30vw;
	background-image: url("../img/bg_sp.jpg");
	background-repeat: repeat-y;
	background-size: 100%;
	z-index: 9999;
}

#content &gt; header .menu .gnav {
	order: 2;
}

#content &gt; header .menu .pnav {
	order: 1;
}

#content &gt; header .menu .gnav &gt; ul,
#content &gt; header .menu .pnav &gt; ul{
	margin: 1em;
}

#content &gt; header .menu .gnav &gt; ul {
	display: block;
	margin-top: 0;
	border-bottom: none;
}

#content &gt; header .menu .gnav &gt; ul li {
	font-size: 1em;
}

#content &gt; header .menu .gnav &gt; ul &gt; li &gt; a,
#content &gt; header .menu .gnav &gt; ul &gt; li &gt; em {
	display: block;
	margin-top: .5em;
	padding: 1.5em 2.5em 1em;
	line-height: 1;
	background-color: rgba(var(--main-color),.2);
}

#content &gt; header .menu .gnav &gt; ul &gt; li.active &gt; a,
#content &gt; header .menu .gnav &gt; ul &gt; li.active &gt; em {
	background-color: inherit;
	color: #FFF;
}

#content &gt; header .menu .gnav &gt; ul &gt; li &gt; a:hover {
	background-color: rgba(var(--main-color),.2);
}

#content &gt; header .menu .gnav &gt; ul li .child .inner {
	padding: 0 2.5em 1.5em;
	background-color: rgba(var(--main-color),.2);
	border: none;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner figure {
	display: none;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner {
	flex: auto;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li {
	width: 30%;
	margin-right: 5%;
	margin-top: 2%;
	line-height: 1.4;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(-n+3) {
	margin-top: 0;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(2n) {
	margin-right: 5%;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li:nth-child(3n) {
	margin-right: 0;
}

#content &gt; header .menu .gnav &gt; ul li .child .inner ul li a {
	align-items: start;
	background-image: linear-gradient(to right, rgba(255,255,255,.5), rgba(255,255,255,.5) 3px, transparent 3px, transparent 6px);
	color: #FFF;
	font-size: 1em;
}

#content &gt; header .menu .pnav::before {
	content: '';
	display: block;
	width: 30%;
	aspect-ratio: 412 / 501;
	margin: 5vw auto;
	background-image: url("../img/logomark.png");
	background-size: 100%;
}

#content &gt; header .menu .pnav &gt; ul{
	flex-wrap: wrap;
	justify-content: center;
}

#content &gt; header .menu .pnav .en a,
#content &gt; header .menu .pnav .sitemap a {
	background-repeat: no-repeat;
	background-size: 1.8em;
	background-position: left center;
	color: #FFF;
}

#content &gt; header .menu .pnav .en {
	order: 1;
}

#content &gt; header .menu .pnav .en a {
	padding: .5em 0 .5em 2.3em;
	background-image: url("../img/icon_balloon_w.svg");
	background-size: 1.8em;
}

#content &gt; header .menu .pnav .sitemap {
	margin-right: 1em;
	order: 2;
}

#content &gt; header .menu .pnav .sitemap a {
	padding: .5em 0 .5em 1.8em;
	background-image: url("../img/icon_folder_w.svg");
	background-size: 1.3em;
}

#content &gt; header .menu .pnav .search {
	width: 100%;
	order: 4;
}

#content &gt; header .menu .pnav .search_form {
	width: 100%;
	margin: 1em 0 0;
}

#content &gt; header .menu .pnav .search_form .box {
	width: 100%;
	padding: .8em 2em .8em .8em;
	color: #FFF;
	border: 1px solid #FFF;
	background-color: transparent;
	font-size: 1em;
}

#content &gt; header .menu .pnav .search_form .button {
	width: 1.5em;
	height: 1.5em;
	right: 1em;
	background-image: url("../img/icon_search_w.svg");
}

#content &gt; header .menu .pnav .member {
	order: 3;
}

#content &gt; header .menu .pnav .member a {
	padding: .3em 1em;
}

}


/*	開閉ボタン
------------------------------------------------------------------------------*/

.menu_button {
	display: none;
}

@media screen and (max-width: 810px) {
	
.menu_button,
.menu_button span {
	display: inline-block;
	transition: transform .4s, display .4s, background .4s, top .4s, bottom .4s, opacity .4s;
	box-sizing: border-box;
}
	
.menu_button {
	position: fixed;
	display: block;
	z-index: 9999;
	right: 3vw;
	top: 4vw;
	width: 12vw;
	height: 12vw;
}
	
.menu_button:hover {
	cursor: pointer;
}

.menu_button span {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 60%;
	height: .3vw;
	background-color: rgba(var(--sub-color),1);
	border-radius: 100em;
}
	
.menu_button.active {
}

.menu_button.active span {
	width: 60%;
	height: .3vw;
	background-color: rgba(255,255,255,1);
}

.menu_button span:nth-of-type(1) { top: 3.5vw;}
.menu_button span:nth-of-type(2) { top: 6vw; width: 48%; left: 56%;}
.menu_button span:nth-of-type(3) {	top: 8.5vw; width: 36%; left: 62%;}

.menu_button.active span:nth-of-type(1) { top: 6vw; transform: translateX(-50%) rotate(-315deg);}
.menu_button.active span:nth-of-type(2) { opacity: 0;}
.menu_button.active span:nth-of-type(3) { top: 6vw; transform: translateX(-50%) rotate(315deg); width: 60%; left: 50%;}

}


/*------------------------------------------------------------------------------

	main

------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------

	記事一覧共通デザイン

------------------------------------------------------------------------------*/

main #news .info a,
main #index .group a {
	display: block;
	text-decoration: none;
	color: rgba(51,51,51,1);
}

main #news .info a:not(:first-of-type),
main #index .group a:not(:first-of-type) {
	margin-top: 1.5em;
}

main #news .info dl,
main #index .group a dl {
	display: flex;
}

main #news .info dl dt,
main #index .group a dl dt {
	width: 9em;
	margin-right: 1.5em;
	padding: .3em 1.5em;
	line-height: 1.2;
	font-family: 'Urbanist', sans-serif;
	font-style: italic;
	border-right: 1px dashed rgba(var(--sub-color),.5);
	border-left: 1px dashed rgba(var(--sub-color),.5);
}

main #news .info .member dl dt,
main #index .group a dl dt {
	position: relative;
}

main #news .info .member dl dt::after,
main #index .group a.member dl dt::after {
    position: absolute;
    top: .5em;
    right: 1.8em;
    content: "";
    width: 0.8em;
    height: 0.8em;
    background-image: url(../../common/img/icon_lock_g.svg);
    background-repeat: no-repeat;
}

main #news .info dl dt span,
main #index .group a dl dt span {
	display: block;
}

main #news .info dl dt span:nth-of-type(1),
main #index .group a dl dt span:nth-of-type(1) {
	font-size: 1.188em;
}

main #news .info dl dt span:nth-of-type(2),
main #index .group a dl dt span:nth-of-type(2) {
	font-size: 2.25em;
	font-weight: 300;
}

main #news .info dl dd,
main #index .group a dl dd {
	display: flex;
	align-items: center;
	flex: 1;
	width: 100%;
	padding: .3em 0;
}


/*------------------------------------------------------------------------------

	footer

------------------------------------------------------------------------------*/

/*	 共通
------------------------------------------------------------------------------*/

#content &gt; footer #access {
	position: relative;
	padding: 80px 0;
	color: rgba(255,255,255,1);
}

#content &gt; footer #access::after {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url("../img/bg_pc.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1, -1);
	z-index: -1;
}

#content &gt; footer #access .site_column {
	max-width: 853px;
}

#content &gt; footer h2,
#content &gt; footer #copy,
#content &gt; footer address ul li {
	font-family: 'Urbanist', sans-serif;
	font-weight: 600;
}

#content &gt; footer h2 {
	margin-bottom: 1em;
	font-size: 2.625em;
	font-weight: 600;
	text-align: center;
	color: rgba(255,255,255,1);
}


@media screen and (max-width: 810px) {
	
#content &gt; footer #access {
	padding: 15vw 0 20vw;
}

#content &gt; footer #access::after {
	background-image: url("../img/bg_sp.jpg");
}
	
#content &gt; footer h2 {
	margin-bottom: .5em;
	font-size: 8vw;
}
	
}


/*	 パンくず
------------------------------------------------------------------------------*/

#content &gt; footer .breadcrumb ul {
	display: flex;
	margin: 1.5em 0;
	flex-wrap: wrap;
}

#content &gt; footer .breadcrumb ul li.sitemap {
	margin-right: 2em;
}

#content &gt; footer .breadcrumb ul li:not(:first-child):not(:last-child)	{
	margin-right: 1em;
}

#content &gt; footer .breadcrumb ul li:not(:first-child):not(:last-child)::after {
	content: '';
	display: inline-block;
	width: .875em;
	height: .875em;
	margin-left: 1em;
	background-repeat: no-repeat;
	background-size: 100%;
	vertical-align: middle;
	background-image: url("../img/icon_arrow_b.svg");
}

#content &gt; footer .breadcrumb ul li,
#content &gt; footer .breadcrumb ul li a {
	color: rgba(var(--accent-color),1);
}

#content &gt; footer .breadcrumb ul li a {
	text-decoration: underline;
}

#content &gt; footer .breadcrumb ul li.sitemap a::before,
#content &gt; footer .breadcrumb ul li.home a::before {
	content: '';
	display: inline-block;
	width: 1.15em;
	height: 1.15em;
	margin-right: .5em;
	background-repeat: no-repeat;
	background-size: 100%;
}

#content &gt; footer .breadcrumb ul li.sitemap a::before {
	background-image: url("../img/icon_folder_b.svg");
	vertical-align: middle;
}

#content &gt; footer .breadcrumb ul li.home a::before {
	background-image: url("../img/icon_home_b.svg");
	vertical-align: -.2em;
}

@media screen and (max-width: 810px) {

#content &gt; footer .breadcrumb ul {
	display: none;
}

}


/*	 address
------------------------------------------------------------------------------*/

#content &gt; footer address &gt; section {
	display: flex;
	align-items: center;
	justify-content: center;
} 

#content &gt; footer address &gt; section h3 {
	margin-right: 1.5em;
	padding: 1.5em;
	border-right: 1px dashed rgba(255,255,255,.5);
	font-size: 1.25em;
	font-weight: bold;
}

#content &gt; footer address dl dt {
	font-weight: bold;
}

#content &gt; footer address dl dd &gt; span:nth-of-type(2) {
	margin-left: .5em;
}

#content &gt; footer address dl dd &gt; span:nth-of-type(3) {
	display: block;
}

#content &gt; footer address ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 2em;
	padding: .8em 4em;
	background: linear-gradient(to right, rgba(185,106,255,.3), rgba(71,21,255,.3));
	border-radius: 10em;
}

#content &gt; footer address ul li {
	line-height: 1;
}

#content &gt; footer address ul .tel,
#content &gt; footer address ul .fax {
	font-size: 1.625em;
}

#content &gt; footer address ul .mail {
	font-size: 1.25em;
}

#content &gt; footer address ul a,
#content &gt; footer address ul span {
	display: flex;
	align-items: center;
}

#content &gt; footer address ul .tel a,
#content &gt; footer address ul .mail a {
	color: rgba(255,255,255,1);
}

#content &gt; footer address ul a::before,
#content &gt; footer address ul span::before {
	display: inline-block;
	content: "";
	margin-right: .4em;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

#content &gt; footer address ul .tel a::before {
	width: 1.2em;
	height: 1.2em;
	background-image: url("../img/icon_tel.svg");
}

#content &gt; footer address ul .fax span::before {
	width: 1.5em;
	height: 1.5em;
	background-image: url("../img/icon_fax.svg");
}

#content &gt; footer address ul .mail a::before {
	width: 1.3em;
	height: 1.3em;
	margin: .2em .5em 0 0;
	background-image: url("../img/icon_mail.svg");
}

@media screen and (max-width: 810px) {

#content &gt; footer .site_column {
	width: 80%;
}	
	
#content &gt; footer address &gt; section {
	flex-direction: column;
} 

#content &gt; footer address &gt; section h3 {
	width: 100%;
	margin: 0 0 1.5em 0;
	padding: 1.5em;
	border-right: none;
	border-bottom: 1px dashed rgba(255,255,255,.5);
	font-size: 1.25em;
	font-weight: bold;
	text-align: center;
}

#content &gt; footer address dl dt,
#content &gt; footer address dl dd {
	text-align: center;
}

#content &gt; footer address dl dd &gt; span:nth-of-type(1) {
	display: block;
}
	
#content &gt; footer address dl dd &gt; span:nth-of-type(2) {
	margin: 0 .5em 0 0;
}

#content &gt; footer address dl dd &gt; span:nth-of-type(3) {
	display: inline
}

#content &gt; footer address ul {
	flex-direction: column;
	margin-top: 8vw;
	padding: 0;
	background: none;
}
	
#content &gt; footer address ul li {
	width: 100%;
}

#content &gt; footer address ul li:not(:first-of-type) {
	margin-top: 3vw;
}	
	
#content &gt; footer address ul a,
#content &gt; footer address ul span {
	justify-content: center;
	background: linear-gradient(to right, rgba(185,106,255,.3), rgba(71,21,255,.3));
	padding: 4vw 0;
	border-radius: 10em;
	height: 15vw;
}

#content &gt; footer address ul a {
	text-decoration: none;
}	
	
}


/*	 offer
------------------------------------------------------------------------------*/

#content &gt; footer .offer {
	margin-top: 4em;
	text-align: center;
	letter-spacing: .2em;
}

@media screen and (max-width: 810px) {

#content &gt; footer .offer {
	margin-top: 15vw;
	font-size: 2.5vw;
}
	
}
/*	 copy
------------------------------------------------------------------------------*/

#content &gt; footer #copy {
	margin-top: 4em;
	font-size: .875em;
	text-align: center;
	letter-spacing: .2em;
}

@media screen and (max-width: 810px) {

#content &gt; footer #copy {
	margin-top: 15vw;
}
	
}


/*	 page_top
------------------------------------------------------------------------------*/

#page_top {
    position: fixed;
	right: 3vw;
    bottom: 3vw;
	z-index: 1000;
	width: 10vw;
	height: 10vw;	
	max-width: 60px;
	max-height: 60px;
    transition: opacity .6s;
	background-color: #FFF;
	opacity: 0;
}

.moved #page_top {
	opacity: .7;
}

#page_top a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(var(--main-color),1);
	text-decoration: none;
	cursor: default;
}

.moved #page_top a {
	cursor: pointer;
	opacity: 1;
}

#page_top a::after {
	position: absolute;
	top: 60%;
	left: 50%;
	transform: translate(-50%,-50%)  rotate(45deg);
	content: "";
	display: block;
	width: 30%;
	height: 30%;
	border-top: 1px solid #FFF;
	border-left: 1px solid #FFF;
}

</pre></body></html>