@charset "UTF-8";
/*clamp第2計算→フォントvw769　余白vw1920 スマホ→PC×0.6*/
body {
	position: relative;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 100%; /* = ブラウザ標準（16px） */
	font-optical-sizing: auto;
	font-style: normal;
	color: #44403f;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.en {
	font-family: "Libre Baskerville", serif;
	font-weight: 500;
	letter-spacing: 0.005em;
}
.serif {
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 1.65;
}
a {
	color: inherit;
}
img {
	max-width: 100%;
	vertical-align: bottom;
}
a,
.mover {
	-webkit-transition: opacity 0.2s ease-out;
	-o-transition: opacity 0.2s ease-out;
	transition: opacity 0.2s ease-out;
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden;
	zoom: 1;
}
a:hover,
.mover:hover {
	opacity: 0.75;
}
.opa_no:hover {
	opacity: initial;
}
.text_underline {
	text-decoration: underline;
}
a.tel {
	cursor: text;
}
a.tel:hover {
	opacity: 1;
}
/*文字リンク*/
a.text_link {
	font-size: clamp(12px, 2.08vw, 16px);
	font-weight: 500;
	color: #9e9e9f;
	text-decoration: underline;
	display: block;
	margin-top: 3em;
	cursor: pointer;
}
a.text_link:hover {
	text-decoration: none;
}
/*詳しく見るボタン*/
.contentWrap .more {
	display: inline-block;
	font-size: clamp(10px, 2vw, 12px);
	letter-spacing: 0.01em;
	line-height: 1;
	font-weight: 500;
	padding: 0.6em 1.8em;
	text-align: center;
	border-radius: 2em;
	border: 1px solid #44403f;
	text-decoration: none;
}
.contentWrap .more:hover {
	opacity: 1;
	background-color: #44403f;
	color: #ffffff;
}
@media (min-width: 769px) {
	a.text_link {
		margin-top: 0;
	}
}
@media (min-width: 769px) {
/*画像拡大PCのみ*/
	.imgZoom {
		cursor: pointer;
		max-width: 500px;
		overflow: hidden;
		width: 100%;
	}
	.imgZoom img {
		height: auto;
		transition: transform .6s ease;
	}
	.imgZoom:hover img {
		transform: scale(1.05);
	}
	.imgZoom:hover {
		opacity: initial;
	}
}
/*mode_*/
.mode_pc {
	display: none;
}
.mode_pc_inline {
	display: none;
}
.mode_sps {
	display: block;
}
.mode_sp {
	display: block;
}
.mode_sp_inline {
	display: inline-block;
}
@media (min-width: 430px) {
	.mode_sps {
		display: none;
	}
}
@media (min-width: 769px) {
	.mode_pc {
		display: block;
	}
	.mode_pc_inline {
		display: inline-block;
	}
	.mode_sp {
		display: none;
	}
	.mode_sp_inline {
		display: none;
	}
}
/*余白*/
.mb1 { 
	margin-bottom: 1em;
}
.mb2 { 
	margin-bottom: 2em;
}
.mt1 { 
	margin-top: 1em;
}
.mt2 { 
	margin-top: 2em;
}
.mb0 {
	margin-bottom: 0!important;
}
.mt0 {
	margin-top: 0!important;
}
/*文字サイズ*/
.txt-s {
	font-size: 85%;
}
/*配置*/
.t-center {
	text-align: center;
}
@media (min-width: 769px) {
	.t-center_pc {
		text-align: center;
	}
	.pc_flex {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}
/*ページ内リンク用ヘッダーの高さ分*/
.anchor {
	margin-top: -60px;
	padding-top: 60px
}
@media (min-width: 1000px) {
	.anchor {
		margin-top: -80px;
		padding-top: 80px;
	}
}

/*
ヘッダー
---------------------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	background-color:rgba(255, 255, 255, 1.0);
	z-index: 20;
	transition: 0.5s ease;
	box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.4);
	overflow: hidden;
}
header.is-fixed {
	background-color:rgba(255, 255, 255, 0.9);
	transition: all 1000ms;
}
header #headerInner {
	width: 94%;
	margin: auto;
	display: flex;
	        justify-content: space-between;
	        align-items: center;
	height: clamp(60px, 4.17vw, 80px);
}
header .logo {
	position: relative;
}
header .logo a {
	width: 100%;
	display: block;
	text-align: left;
}
header .logo a > img {
	/*height: clamp(14px, 1.77vw, 34px);*/
	height: min(9vw, 30px);
}
header #contentNav {
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
header.open #contentNav .contentNavInner {
	height: 100vh;
	background-color: #ffffff;
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	z-index: 10;
	overflow-y: auto;
}
header .closeNav {
	transition: all 0.5s;
	text-align: left;
	        order: 1;
	display: none;
	width: 80%;
	max-width: 231px;
	margin: 20vw auto 30vw auto;
}
header.open .closeNav {
	display: flex;
	flex-direction: column;
	overflow: auto;
}
header .btnArea {
	 order: 1;
}
header .btnArea li {
	display: block;
	margin-bottom: 20px;
}
header .btnArea li.btn {
	margin-bottom: 11px;
}
header .btnArea li.btn:last-child {
	margin-bottom: 30px;
}
header .btnArea li.btn a {
	height: 43px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #dcdddd;
	font-size: 15px;
	text-align: center;
	font-weight: 500;
	position: relative;
}
header .btnArea li.btn a::after {
	position: absolute;
	content: "";
	right: 8px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 4px;
	height: 4px;
	border-bottom: 1px solid #44403f;
	border-right: 1px solid #44403f;
	transform: rotate(-45deg);
}
header .btnArea li.btn a:hover {
	opacity: 1;
	background-color: #44403f;
	color: #ffffff;
}
header .btnArea li.btn a.is-active {
	font-weight: 900;
}
header .btnArea li.btn a:hover::after {
	border-bottom: 1px solid #ffffff;
	border-right: 1px solid #ffffff;
}
header .navArea {
	order: 2;
	width: 100%;
	margin-bottom: 24px;
}
header .navArea li {
	border-top: 1px solid #000000;
	text-align: center;
}
header .navArea li:last-child {
	border-bottom: 1px solid #000000;
}
header .navArea li a {
	display: block;
	position: relative;
	color: #231815;
	font-weight: 400;
	font-size: 15px;
	line-height: 1.4;
	padding: 11px;
}
header .navArea li a:after {
	position: absolute;
	content: "";
	right: 17px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #231815;
	border-right: 1px solid #231815;
	transform: rotate(-45deg);
}
header .navArea li a:hover,
header .navArea li a.is-active {
	opacity: 1;
	font-weight: 700;
}
header .navArea li.mode_top {
		display: none; /*TOPページPCのみ問い合わせ*/
	}
@media (min-width: 1000px) {
	header #headerInner {
		max-width: 1920px;
	}
	header .logo {
		height: 100%;
		width: auto;
	}
	header .logo a {
		height: 100%;
		display: flex;
		align-items: center;
	}
	header .logo a > img {
		height: clamp(14px, 2.4vw, 41px);
		margin-top: 10px;
	}
	header #contentNavWrap {
		width: 100%;
		display: flex;
	}
	header #contentNav {
		position: unset;
		width: 100%;
		height: auto;
		background-color: transparent;
		padding-top: 0;
		display: block;
	}
	header .closeNav {
		margin: 10px 0 0 0;
		max-width: 100%;
		width: 100%;
		display: flex;
		flex-direction: unset;
		justify-content: flex-end;
		align-items: unset;
	}
	header .navArea {
		order: 1;
		margin: 0;
		padding-right: 3%;
		width: auto;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
	}
	header .navArea li {
		position: relative;
		margin: 0;
		padding: 0 min(1vw, 15px);
		border-top: none;
	}
	header .navArea li:last-child {
		border-bottom: none;
		border-right: none;
	}
	header .navArea li.mode_sp,
	header .btnArea li.mode_sp {
		display: none;
	}
	header .navArea li a,
	header .navArea li p {
		font-size: min(1.3vw, 15px);
		line-height: 19px;
		padding: 0;
		font-weight: 400;
	}
	header .navArea li p {
		cursor: default;
	}
	header .navArea li.active > a,
	header .navArea li.active > p {
		opacity: 0.75;
	}
	header .navArea li p > span {
		display: none;
	}
	header .navArea li a:after,
	header .navArea li p:after  {
		display: none;
	}
	header .navArea li a:before {
		content: none;
	}
	header .navArea li div ul li:last-child {
		border-bottom: none;
	}
	header .navArea li div {
		width: /*170%*/13em;
		position: absolute;
		top: 22px;
		left: 0;
		background-color: transparent;
		z-index: 1;
	}
	header .navArea li div ul {
		background-color: /*#A38C42*/#cccccc;
		width: 100%;
		display: flex;
		flex-direction: column;
	}
	header .navArea li div ul li {
		padding: 0;
		margin: 0;
		border: none;
	}
	header .navArea li div ul li:last-child {
		border: none;
	}
	header .navArea li div ul li a {
		width: 100%;
		padding: 10px;
		display: block;
		text-align: left;
		color: #000000;
	}
	header .navArea li div ul li a:hover {
		color: /*#ffffff*/#C64A68;
		text-decoration: underline;
		opacity: 1;
	}
	header .navArea li div ul li a span {
		left: initial;
		right: 1em;
	}
	header .btnArea {
		order: 2;
		margin-right: 20px;
	}
	header .btnArea li {
		margin-bottom: 0!important;
	}
	header .btnArea li.btn a {
		height: 26px;
		width: 187px;
		font-size: min(1.3vw, 14px);
		border-radius: 1em;
	}
}
@media (min-width: 1650px) {
	header .logo {
		width: auto;
	}
	header .navArea {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
		margin: 0;
		/*padding-right: 3%;*/
		padding-right: 15%;		
		width: unset;
		max-width: unset;
		box-sizing: unset;
		display: flex;
		align-items: center;
		justify-content: unset;
	}
}
/*
menu_btn
---------------------------*/
#menu_btn {
	cursor: pointer;
	text-align: center;
	margin-top: -3.5px;
}
#menu_btn div {
	position: relative;
	width: 23px;
	height: 13px;
	margin: auto;
}
#menu_btn p {
	position: relative;
	top: 7px;
	margin: auto;
	font-size: 10px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-weight: 500;
}
.open #menu_btn p {
	opacity: 0;
}
#menu_btn span {
	position: absolute;
	right: 0;
	left: 0;
	width: 23px;
	height: 1px;
	background-color: #44403f;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	margin: auto;
}
/*.open #menu_btn span {
	background-color: #000000;
}*/
#menu_btn span:nth-of-type(1) {
	top: 0;
}
.open #menu_btn span:nth-of-type(1) {
	-webkit-transform: translateY(6px) rotate(-45deg);
	-ms-transform: translateY(6px) rotate(-45deg);
	    transform: translateY(6px) rotate(-45deg);
}
#menu_btn span:nth-of-type(2) {
	top: 6px;
}
.open #menu_btn span:nth-of-type(2) {
	opacity: 0;
}
#menu_btn span:nth-of-type(3) {
	top: auto;
	bottom: 0;
}
.open #menu_btn span:nth-of-type(3) {
	-webkit-transform: translateY(-6px) rotate(45deg);
	-ms-transform: translateY(-6px) rotate(45deg);
	    transform: translateY(-6px) rotate(45deg);
}
@media (min-width: 1000px) {
	#menu_btn {
		display: none;
	}
}

/*--------------------------
フッター
----------------------------*/
footer {
	background-color: #e6e6e6;
	padding: 3em 0 1.5em 0;
	width: 100%;
}
footer .logo {
	margin: 0 auto 3em auto;
	width: min(40vw, 205px);
}
footer .copyright {
	font-size: min(2.67vw, 10px);
	text-align: center;
}
footer .navArea {
	margin: 0 auto 2.5em auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
footer .navArea li {
	padding: 0 1em;
	border-right: 1px solid #44403f;
	margin-bottom: 1em;
}
footer .navArea li a {	
	font-size: min(3.2vw, 12px);
}
@media screen and (min-width: 769px) {
	footer {
		padding: 92px 0 22px 0;
	}
	footer .logo,
	footer .navArea {
		margin-bottom: min(3.59vw, 69px);
	}
	footer .copyright {
		font-size: 10px;	
	}
	footer .navArea li {
		margin-bottom: 0;
	}
	footer .navArea li a {	
		font-size: 12px;
	}
}
/* pagetop */
.pagetop {
	/*display: none;*/
	position: fixed;
	z-index: 10;
	bottom: 0;
	right: 0;
	width: 35px;
	height: 130px;
	background-color: rgba(68, 64, 63, .8);
	color: #fff;
}
.pagetop div {
	display: block;
	cursor: pointer;
}
.pagetop .btnarrow {
	position: relative;
	color: #fff;
	padding-left: 15px;
	text-decoration: none;
	outline: none;
}
.pagetop .btnarrow p {
	color: #fff;
	font-size: 14px;
	/*アルファベット縦書き*/
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
			writing-mode: vertical-rl;
	text-orientation: upright;
	padding-top: 60px;
}
.pagetop .btnarrow:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 10px;
	width: 1px;
	height: 95px;
	background: #fff;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.pagetop .btnarrow:after {
	content: "";
	position: absolute;
	top: 23px;
	left: 9px;
	width: 12px;
	height: 1px;
	background: #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.pagetop .btnarrow:hover:before {
	top: 10px;
}
.pagetop .btnarrow:hover:after {
	top: 13px;
}
.pagetop.stop {
	position: absolute;
	bottom: 0;
}

/*--------------------------
 下層共通
---------------------------*/
/*下層　パンくず*/
.breadcrumbList {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 0.6em 3%;
	background-color: #dedede;
}
.breadcrumbList li {
	margin-right: 1em;
	font-size: min(2.5vw, 15px);
	line-height: 1.6;
	font-weight: 700;
}
.breadcrumbList li a {
	display: block;
	position: relative;
	padding-right: 1.5em;
	font-weight: normal;
}
.breadcrumbList li a:after {
	position: absolute;
	right: 0;
	content: "│";
	font-weight: 500;
}
.breadcrumbList li a:hover {
	opacity: 1;
	font-weight: 700;
}
@media screen and (min-width: 769px) {
	.breadcrumbList {
		height: 60px;
	}	
}
/*
.contentWrap
---------------------------*/
.contentWrap {
	margin-top: clamp(60px, 4.17vw, 80px);
	margin-bottom: clamp(50px, 5.21vw, 100px);
}
.inner {
	width: /*90*/85%;
	margin: auto;
}
/*
#titleArea
---------------------------*/
#titleArea {
	border-bottom: 1px solid #44403f;
	padding: 1em 0;
	margin-bottom: clamp(2em, 2.5vw, 48px);
}
#titleArea .inner {
	max-width: /*1553*/1600px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#titleArea h1 {
	font-size: clamp(20px, 5.2vw, 40px);
	line-height: 1;
}
#titleArea h1 span {
	display: block;
	font-size: clamp(13px, 2.08vw, 16px);
	line-height: 1.8;
}
#titleArea .date {
	font-size: 12px;
	font-weight: 700;
	margin-top: 4em;
	margin-right: auto;
	padding-left: 2em;
	padding-left: min(3vw, 50px);
}
@media (max-width: 430px){
	#titleArea .inner {
		flex-wrap: wrap;
	}
	#titleArea .date {
		order: 3;
		margin-top: 0;
		padding-left: 0;
		width: 100%;
	}
	#titleArea h1 {
		order: 1;
	}
}
@media (min-width: 769px){
	#titleArea {
		padding: min(2.86vw, 55px) 0 min(2.34vw, 45px) 0;
	}
}

/*.download*/
#titleArea .download {
	font-size: 12px;
	/*min-width: 12em;*/
}
#titleArea .download .icon {
	text-align: center;
	padding-top: 30px;
	background-image: url("/image/common/icon_download.svg");
	background-repeat: no-repeat;
	background-position: center top;
    background-size: auto 21px;
	display: block;
}
/*#titleArea .download dt {
	text-align: center;
	padding-top: 30px;
	background-image: url("/image/common/icon_download.svg");
	background-repeat: no-repeat;
	background-position: center top;
    background-size: auto 21px;
	margin-bottom: 1em;
}
#titleArea .download dd {
	display: flex;
	justify-content: center;
}
#titleArea .download dd > a {
	display: block;
	font-size: inherit;
	font-weight: 500;
	line-height: 1;
	padding: 0.37em 1.5em;
	text-align: center;
	position: relative;
	border: 1px solid #44403f;
	border-radius: 1em;
}
#titleArea .download a:first-child {
	margin-right: 1em;
}
#titleArea .download a::before {
	position: absolute;
	content: "";
	right: 0.5em;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 4px solid #44403f;
	border-right: 0;
}
#titleArea .download a:hover {
	opacity: 1;
	color: #ffffff;
	background-color: #44403f;
}
#titleArea .download a:hover::before {
	border-left: 4px solid #ffffff;
}*/
@media (max-width: 430px){
	#titleArea .download {
		font-size: min(3vw, 12px);
		order: 2;
	}
	/*#titleArea .download dd a:first-child {
		margin-right: 0.5em;
	}*/
}
@media (min-width: 769px){
	/*#titleArea .download dt {
		margin-bottom: 1.5em;
	}*/
}
@media (min-width: 1600px){
	#titleArea .download {
		margin-right: 50px;
	}
}
/*
#mainArea
---------------------------*/
#mainArea .inner {
	max-width: 1360px;
	letter-spacing: 0.01em;
}
.sidedish {
	display: inline-block;
	background-color: #f6f6f6;
	border-radius: 1em;
	padding: 0 1.8em;
	font-size: clamp(12px, 2.47vw, 19px);
	line-height: 1.5;
}
.link-text a {
	font-size: clamp(12px, 2.34vw, 18px);
	color: #006fbc;
	position: relative;
	padding-left: 1em;
	display:  inline-block;
}
.link-text a::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "》";
	font-size: inherit;
	color: #231815;
}

/*共通タイトルまわり
---------------------------*/
.mainRead {
	border-bottom: 1px solid #44403f;
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;
}
.mainRead h2 {
	font-size: clamp(23px, 4.94vw, 38px);
	font-weight: 700;
	line-height: 1.6;
}
.mainRead .read {
	font-size: clamp(14px, 2.99vw, 23px);
	font-weight: 400;
	line-height: 1.87;
}
.mainRead .read.mb1 {
	margin-bottom: 1em;
}
.mainRead .link-text {
	text-align: right;
}
@media (min-width: 769px) {
	.mainRead {
		border-bottom: 1px solid #44403f;
		padding-bottom: /*46*/53px;
		margin-bottom: 56px;
	}
}
/*tagList
-----------------------------*/
.tagList {
	display: flex;
	flex-wrap: wrap;
}
.tagList li {
	margin-right: 0.5em;
	margin-bottom: 0.5em;
}
.tagList li a {
	line-height: 1;
	font-weight: 500;
    font-size: clamp(10px, 2.08vw, 16px);
	border-radius: 2em;
	padding: 0.3em 0.7em;
	background-color: #dcdddd;
	position: relative;
	display: inline-block;
}
.tagList li a:hover {
	opacity: 1;
	background-color: #44403f;
	color: #ffffff;
}
.tagList li:last-child {
	margin-right: 0em;
}
.tagList li a::before {
	content: "#";
	display: inline-block;
	margin-right: 0.2em;
}
@media (min-width: 768px) {
	.tagList li a {
		font-size: initial;
	}
}
/*CMSページ送り
---------------------------*/
/*#pager*/
#pager {
	margin: 2em auto 0 auto;
	text-align: center;
	display: flex;
	justify-content: center;
	/*background-color: #f2f2f3;*/
	border-radius: 2em;
}
#pager li {
	margin: 4px;
	line-height: 1;
	width: 2em;
	height: 2em;
	text-align: center;
	box-sizing: border-box;
	display: flex;
	align-items: anchor-center;
	justify-content: center;
}
#pager li a {
	font-size: inherit;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	width: 100%;
	font-weight: 500;
	box-sizing: border-box;
	border-radius: 2em;
}
#pager li.current a {
	background-color: #44403f;
	color: #ffffff;
}
#pager li a:hover {
	opacity: 1;
	background-color: #e6e6e6;
}
#pager li.current a:hover {
	background-color: #e6e6e6;
	cursor: default;
}
#pager li.prev a,
#pager li.next a {
	/*background-color: #d4dcc6;*/
	color: #006fbc;
}
#pager li.prev.off,
#pager li.next.off {
	display: none;
}
#pager li.prev a:hover,
#pager li.next a:hover {
	opacity: 0.8;
	background-color: initial;
}
@media (min-width: 768px) {
	#pager {
		margin-top: 100px;
	}
}
/*次へ・前へ*/
#pageNavi {
	text-align: center;
	display: flex;
	justify-content: space-between;
	justify-content: space-around;
	max-width: 400px;
	width: 70%;
	margin: auto;
	padding: min(4vw, 40px) 0;
}
#pageNavi a {
	font-size: clamp(12px, 2.34vw, 18px);
	color: #006fbc;
	position: relative;
	padding-left: 1em;
	display:  inline-block;
}
#pageNavi a::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "》";
	font-size: inherit;
	color: #231815;
}
#pageNavi .prev a {
	padding-left: 0;
	padding-right: 1em;
}
#pageNavi .prev a::before {
	left: initial;
	right: 0;
	content: "《";
}

/*下からふわっと表示するアニメーション
---------------------------*/
/* 初期状態：透明で20px下に配置 */
.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  will-change: opacity, transform;
}
/* 実行状態：不透明で元の位置へ */
.fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/*.others範囲内の共通
(privacy、social、company、404など)
---------------------------*/
.others p,
.others dd,
.others dt,
.others li {
	font-size: clamp(14px, 2.99vw, 23px);
	line-height: 1.87;
	margin-bottom: 2em;
}
.others dt {
	margin-bottom: 0;
}
.others h3 {
	font-size: clamp(23px, 4.94vw, 38px);
	font-weight: 700;
	line-height: 1.6;
	margin-bottom: 1.2em;
}
.others a.link01 {
	color: #006fbc;
}
.others a.link01:hover {
	text-decoration: underline;
	opacity: 1;
}
/*social*/
.others #social {
	margin-top: 2em;
}
.others #social p,
.others #social dd,
.others #social dt,
.others #social li {
	font-size: clamp(13px, 2.34vw, 18px);
	line-height: 1.83;
	margin-bottom: 1.8em;
}
.others #social dt {
	margin-bottom: 0;
}
.others #social li {
	margin-bottom: 0;
}
.others #social .inline li {
	display: inline;
}
@media (min-width: 769px) {
	.others #social {
		margin-top: 4.5em;
		max-width: 1335px;
	}	
}
/*company*/
.others #company dd,
.others #company dt {
	margin-bottom: 0;
}
.others #company dl {
	margin-bottom: 0.5em;
}
.others #company dl:last-of-type {
	margin-top: 2.6em;
	margin-bottom: 2.6em;
}
.others #company .link a {
	color: #0000ff;
}
@media (min-width: 769px) {
	.others #company dl {
		display: flex;
		margin-bottom: 0;
	}
	.others #company dt {
		width: 23%;
	}
	.others #company dd {
		width: auto;
	}
}
/*err404*/
#err404 .contentWrap {
	background-color: #ffffff;
}
#err404 footer {
	position: fixed;
	bottom: 0;
	z-index: -1;
}
#err404 .others h3 {
	font-size: clamp(20px, 4.94vw, 38px);
}