@charset "utf-8";

/*=======================================================================

各ページ(style.css)
 
========================================================================*/
.pc_only,
.pc_tb_only {
  display: inherit;
}

.tb_only,
.sp_only {
  display: none;
}

/* margin padding */
#content p,
#content ul,
#content ol {
  margin: 0 0 16px;
}
#content ul.disc {
  margin-left: 20px;
  list-style-type: disc;
}
#content ul.circle {
  margin-left: 20px;
  list-style-type: circle;
}
#content ol.decimal {
  margin-left: 20px;
  list-style-type: decimal;
}
#content ol.alpha {
  margin-left: 20px;
  list-style-type: upper-alpha;
}
#content table ul {
  margin-bottom: 0;
  margin-left: 20px;
}
#content table ul.disc {
  margin: 0;
  margin-left: 20px;
  list-style-type: disc;
}
#content li {
	margin-bottom: 8px;
}
#content .maru_num {
  margin-left: 4px;
}
#content .maru_num li {
  padding-left: 1.3em;
  text-indent: -1.3em;
}
#content .number li {
  padding-left: 2.5em;
  text-indent: -2.5em;
}
#content table li {
	margin-bottom: 0;
}
#content dt {
	margin-bottom: 4px;
}
#content dd {
	margin-bottom: 16px;
}

#content .circle {
  padding-left: 1.1em;
}
#content .circle::before {
	display: inline-block;
	content: '';
	width: 0.75em;
	height: 0.75em;
  margin: 0 0.25em 0 -1em;
	background-color: #f78fa0;
	border-radius: 100em;
  position: relative;
}

/* line height */
#content table,
#content dl,
#content li {
	line-height: 1.6;
}

/* text indent */
#content .indent {
	margin-left: 1em;
}
#content li .indent,
#content dl .indent {
	margin-left: 1em;
}
#content .indent-05 {
	padding-left: 0.5em;
	text-indent: -0.5em;
	line-height: 1.5;
}
#content .indent-07 {
	padding-left: 0.7em;
	text-indent: -0.7em;
	line-height: 1.5;
}
#content .kome,
#content .indent-1 {
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.5;
}
#content .indent-1_5 {
	padding-left: 1.55em;
	text-indent: -1.55em;
	line-height: 1.5;
}
#content .indent-1_7 {
	padding-left: 1.75em;
	text-indent: -1.75em;
	line-height: 1.5;
}
#content .indent-2 {
	padding-left: 2em;
	text-indent: -2em;
  line-height: 1.5;
}
#content .indent-3 {
	padding-left: 3em;
	text-indent: -3em;
  line-height: 1.5;
}
#content .indent-3_5 {
	padding-left: 3.5em;
	text-indent: -3.5em;
  line-height: 1.5;
}
#content ol.kakkotsuki li {
  padding-left: 3em;
  text-indent: -3em;
}

#content .text_underline {
  text-decoration: underline;
}
#content .text_underline_wavy {
	text-decoration:underline wavy;
}


/*----------------------------------------------------------------------
 見出し
----------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
  line-height: 1.3;
}

#content h1 {
	padding: 24px;
  background: #39b54a;
  background: #006eb0;
  border-radius: 6px 6px 0 0;
  color: #fff;
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1;
  text-shadow: 0 1px 1px rgba(0,0,0,0.2);
}
#content h2 {
  margin: 40px 0 24px;
  padding: 12px 10px;
  background: #f9f9f9;
  border-left: solid 10px #188ed5;
  border-bottom: solid 1px #d7d7d7;
  color: #333;
  font-size: 1.125rem;
  font-weight: bold;
}
#content h3 {
	display: inline-block;
	min-width: 30%;
  margin: 16px 0;
	padding: 12px 24px 12px 16px;
	background-color: #c9e6f7;
	border-left: 8px solid #8dd0f5;
  font-weight: bold;
}
#content h4 {
  margin: 24px 0 16px;
  font-weight: bold;
}
#content h4 span {
  background: linear-gradient(transparent 60%, #f8c6e0 60%);
}
#content h5 {
  margin: 24px 0 16px;
  color: #006eb0;
  font-weight: bold;
}
#content h5.v2 {
	display: flex;
	min-height: 40px;
	background: #f0f0f0;
}
#content h5.v2 span:nth-of-type(1) {
	display: flex;
	align-items: center;
	padding: 8px 12px;
  background: #04a29e;
  color: #fff;
	font-size: 1.125rem;
	white-space: nowrap;
}
#content h5.v2 span:nth-of-type(2) {
	display: flex;
	align-items: center;
	padding: 8px 12px;
  background: #f0f0f0;
}
#content h6 {
  margin: 24px 0 16px;
}


/* common */
#content dl.common dt {
  margin: 0 0 8px;
  font-weight: 700;
}
#content dl.common dd {
  margin: 0 0 16px;
}
#content .table-responsive {
  margin: 0;
}
#content .table-responsive.with-upper-scrollbar-wrapper {
  display: none;
}

#content table.common {
  width: 100%;
  margin: 0 0 16px;
}
#content table.common thead th {
  background-color: #e8f7e4;
}
#content table.common th {
  background-color: #f5fbf3;
  text-align: center;
}
#content table.common th,
#content table.common td {
  padding: 12px 16px;
  border: 1px solid #ccc;
}
#content table.common th {
  font-weight: bold;
}
#content table.common table th,
#content table.common table td {
  padding: 4px 8px;
	border: 0;
}
#content table.common img {
  vertical-align: middle;
}

#content summary {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 4px;
}
#content table.w50,
#content table.common.w50 {
  width: 50%;
}
#content table.w60,
#content table.common.w60 {
  width: 60%;
}
#content table.w70,
#content table.common.w70 {
  width: 70%;
}
#content table.w80,
#content table.common.w80 {
  width: 80%;
}
#content table.va_top th,
#content table.va_top td {
  vertical-align: top;
}
#content table .nowrap {
  white-space: nowrap;
}
#content .table-responsive table table {
  width: 100% !important;
}
#content table.left thead th {
  text-align: center;
}
#content table.left th {
  text-align: left;
}
#content table.thBold th {
  font-weight: bold;
}
#content table.fw_normal tbody th,
#content table.thBold th span {
  font-weight: normal;
}
#content table thead td {
  border: 0;
  vertical-align: bottom;
}
#content table th.w50 {
  width: 50%;
}
#content table .valign_top {
	vertical-align: top;
}
#content table .bgGray {
  background-color: #f9f9f9;
}
#content table table.tNone {
  width: inherit !important;
}
#content table table.tNone td {
  padding: 0;
  border: 0;
  text-align: left;
  vertical-align: top;
}


#content .bgGray,
#content .bgBlue,
#content .bgPink {
  padding: 15px;
}
#content .bgGray {
  background-color: #f0f0f0;
}
#content .bgBlue {
  background-color: #d9ebfb;
}
#content .bgPink {
  background-color: #FBD9D9;
}
#content .bgBlue ul,
#content .bgBlue ol,
#content .bgBlue li:nth-last-of-type(1),
#content .bgPink ul,
#content .bgPink ol,
#content .bgPink li:nth-last-of-type(1) {
  margin-bottom: 0;
}


/* link btn */
#content .link_arrow,
#content .back_arrow {
	padding-left: 1.25em;
	text-indent: -1.25em;
	line-height: 1.6;
}
#content span.link_arrow {
	padding-left: inherit;
	text-indent: inherit;
}
#content .link_arrow::before {
	padding-right: 4px;
  font-family: "Font Awesome 6 Free";
	font-size: 0.875rem;
  content: "\f0a9";
  color: #006eb0;
	font-weight: 900;
}
#content .back_arrow::before {
	padding-right: 4px;
  font-family: "Font Awesome 6 Free";
	font-size: 0.875rem;
  content: "\f0a8";
  color: #006eb0;
	font-weight: 900;
}

a.with-icon::after {
	content: '';
	padding-left: 20px;
	vertical-align: top;
}
a.with-icon[href$=".pdf" i]::after,
a.with-icon[href*=".pdf?" i]::after {
  background: url(/common/images/icon_pdf.svg) right center/14px auto no-repeat;
}
a.with-icon[href$=".doc" i]::after,
a.with-icon[href*=".doc?" i]::after,
a.with-icon[href$=".docx" i]::after,
a.with-icon[href*=".docx?" i]::after {
  background: url(/common/images/icon_doc.svg) right center/14px auto no-repeat;
}
a.with-icon[href$=".xls" i]::after,
a.with-icon[href*=".xls?" i]::after,
a.with-icon[href$=".xlsx" i]::after,
a.with-icon[href*=".xlsx?" i]::after {
  background: url(/common/images/icon_xls.svg) right center/14px auto no-repeat;
}
a.with-icon[href$=".zip" i]::after,
a.with-icon[href*=".zip?" i]::after {
  background: url(/common/images/icon_zip.svg) right center/14px auto no-repeat;
}


/*----------------------------------------------------------------------
 Flex Box
----------------------------------------------------------------------*/
#content .columnSet {
	display: -webkit-flex;
	display: flex;
}
#content .columnSet.kaigyo {
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#content .columnSet.yokoCenter {
  -webkit-justify-content: center;
  justify-content: center;
}
#content .columnSet.tateTop {
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
#content .columnSet.tateCenter {
  -webkit-align-items: center;
  align-items: center;
}
#content .columnSet.tatebottom {
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.anchor_link li {
	padding-left: 20px;
}
.anchor_link li a {
	position: relative;
}
.anchor_link li a::before {
  font-family: "Font Awesome 6 Free";
  content: "\f13a";
  display: inline-block;
  color: #0081cc;
	font-size: 0.75rem;
  font-weight: 900;
	position: absolute;
	top: 4px;
	left: -16px;
}


#content .description_box {
  margin: 0 0 32px;
  padding: 24px;
  background-color: #f9f9f9;
  border-radius: 0 0 6px 6px;
	box-shadow: 0 6px 6px rgba(0,0,0,.1);
	position: relative;
}
#content .description_box::before {
	content: '';
	width: 4px;
	height: 24px;
  background-color: #39b54a;
	position: absolute;
	top: 24px;
	left: 0;
}
#content .description_box ul,
#content .description_box li,
#content .description_box p {
  margin: 0;
}
#content .description_box .description_title {
  margin: -4px 0 4px;
	color: #ce207a;
	font-size: 1.125rem;
	font-weight: 700;
}
#content .description_box .description_title span {
  background: linear-gradient(transparent 60%, #f9e7f1 60%);
}
#content .description_box li {
  position: relative;
  padding-left: 8px 0;
  line-height: 1.5;
}

#content .waku {
	padding: 16px;
	border: 1px solid #ccc;
}


/*----------------------------------------------------------------------
 お知らせ
----------------------------------------------------------------------*/
#content .news ul,
#content .news li {
  margin: 0;
}
#content .news ul li {
  display: flex;
  align-items: flex-start;
	gap: 4px 16px;
  padding: 16px 12px;
	border-bottom: 1px dotted #ccc;
  line-height: 1.3;
}
#content .news ul li .article {
  display: block;
}
#content .news ul li .article a {
	text-decoration: underline;
}

/* カテゴリアイコン */
#content .news ul li .category {
  display: block;
  min-width: 80px;
  padding: 2px 4px;
  background-color: #e83828;
	border-radius: 4px;
  color: #fff;
  font-size: 0.875rem;
  text-align: center;
}
#content .news ul li span.category.cat1 {
  background: #ff0000; /* 重要*/
}
#content .news ul li span.category.cat2 {
  background: #0892e4; /* お知らせ */
}
#content .news ul li span.category.cat3 {
  background: #33cc00; /* トピックス */
}
#content .news ul li span.category.cat4 {
  background: #9900cc; /* 保険事業 */
}


#content ul.item {
	margin: 16px 0 0;
	padding: 12px;
	background: #f9f9f9;
}
#content ul.item li {
	display: inline list-item;
	margin: 0 0 4px;
	list-style-type: disc;
}
#content ul.item li:last-child {
	margin-bottom: 0;
}
#content .message-date {
  padding: 4px 0 8px;
  text-align: right;
}
#content .backBtn {
  margin: 32px 0 0;
  text-align: center;
}
#content .backBtn a {
  text-decoration: none;
}
#content .backBtn i {
  padding-right: 4px;
}


/*----------------------------------------------------------------------
 家族のこと
----------------------------------------------------------------------*/
#content .fuyosyanintei_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
	gap: 8px 16px;
  margin: 16px 0;
}
#content .fuyosyanintei_box .fuyosyanintei_item {
  width: calc(50% - 14px);
  border: 1px solid #04a29e;
  border-radius: 6px;
}
#content .fuyosyanintei_box .fuyosyanintei_item dl {
  margin: 12px;
}
#content .fuyosyanintei_box .fuyosyanintei_item dt {
  margin: 0 0 6px;
  color: #04a29e;
  font-weight: bold;
  text-align: center;
}
#content .fuyosyanintei_box .fuyosyanintei_item ol {
  margin: 0;
  list-style-type: none;
}
#content .fuyosyanintei_box .fuyosyanintei_item li {
  margin: 0 0 6px;
  padding-left: 1.2em;
  text-indent: -1.2em;
  line-height: 1.2;
}
#content .fuyosyanintei_box .fuyosyanintei_item li:last-child {
  margin: 0;
}

#content .hifuyousya_syumyu {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	margin-bottom: 16px;
}
#content .hifuyousya_syumyu div {
	flex: 1;
  padding: 12px;
  border: 1px solid #04a29e;
  border-radius: 6px;
}
#content .hifuyousya_syumyu .ttl {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
  margin: 0 0 16px;
  color: #04a29e;
  font-size: 1.125rem;
  font-weight: bold;
	line-height: 1.2;
  text-align: center;
}
#content .hifuyousya_syumyu .disc li {
  margin: 0;
}
#content .hifuyousya_syumyu .disc li span {
  color: #ce207a;
}


/*----------------------------------------------------------------------
 子供が生まれた
----------------------------------------------------------------------*/
#content .person {
	margin: 0;
	color: #cf2579;
	font-size: 1.25rem;
	font-weight: 700;
}
#content .box {
	display: flex;
	flex-wrap: wrap;
	padding-inline: 24px;
}
#content .box dl {
	width: 100%;
}
#content .box .boxL {
	width: 120px;
	padding: 8px 16px;
	text-align: center;
}
#content .box .boxL span {
	display: inline-block;
	padding: 8px;
	border: 1px solid #ce207a;
	color: #ce207a;
	font-weight: bold;
}
#content .box .boxR {
	width: calc(100% - 120px);
	text-align: left;
	padding: 0 0 0 16px;
}


/*----------------------------------------------------------------------
 病気になった、ケガをした
----------------------------------------------------------------------*/
#content .such {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 16px;
	margin: 0 40px 16px;
}
#content .such li {
	width: calc(100% / 3 - 12px);
	border: 1px dotted #333;
	border-radius: 8px;
}
#content .such li a {
	display: block;
	padding: 24px 16px;
	background-color: #84ccc9;
	border: 2px solid #fff;
	border-radius: 10px;
	color: #fff;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
}

/* FAQ */
#content dl.faq div {
	margin-bottom: 16px;
	padding: 24px;
	background-color: #f9f9f9;
	border-radius: 8px;
}
#content dl.faq .s_question {
  padding: 24px 0 4px;
  color: #39b54a;
  color: #00a99d;
  font-weight: bold;
	padding-left: 1.6em;
  text-indent: -1.6em;
}
#content dl.faq .s_question:nth-of-type(n+10) {
	padding-left: 2.15em;
  text-indent: -2.15em;
}
#content dl.faq .s_question:first-child {
  padding-top: 0;
  border-top: 0;
}
#content dl.faq .s_answer {
  margin: 0 0 0 12px;
	padding-left: 1em;
  text-indent: -1em;
  line-height: 1.6;
}
#content dl.faq .s_answer.doublefigure,
#content dl.faq .s_answer:nth-of-type(n+10) {
  margin-left: 22px;
}
#content dl.faq .s_answer span {
  color: #f84e6f;
  font-weight: bold;
}
#content dl.faq .s_answer p {
	margin: 6px 0 0;
}
#content dl.faq .s_answer ul {
	margin-bottom: 0;
	text-indent: 0;
}
#content dl.faq .s_answer ul li {
	margin-bottom: 0;
}

#content .back_btn_qa {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid #ddd;
  text-align: center;
}


/*----------------------------------------------------------------------
 健診施設のご案内（販売スタッフ向け）
----------------------------------------------------------------------*/
#content table.kenshin_jushin th {
	white-space: nowrap;
}

#content .keiyakuiryoukikan {
	clear: both;
	border-top: 1px solid #ccc;
}
#content .keiyakuiryoukikan div {
	border: 1px solid #ccc;
	border-top: 0;
}
#content .keiyakuiryoukikan dt,
#content .keiyakuiryoukikan dd {
	margin: 0;
	padding: 12px 16px;
}
#content .keiyakuiryoukikan dt {
	padding: 12px;
	background-color: #f5fbf3;
	border-bottom: 1px solid #ccc;
}


/*----------------------------------------------------------------------
 家庭常備薬等の申込みについて
----------------------------------------------------------------------*/
#content .medicine_apply {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
}
#content .medicine_apply div:nth-of-type(2) {
	margin-left: auto;
}


/*----------------------------------------------------------------------
 メタボ（特定）健診と保健指導
----------------------------------------------------------------------*/
#content .asking {
	margin: 24px 0 0;
	padding: 8px 16px;
	background: #ce207a;
	color: #fff;
	font-weight: 700;
}
#content dl.metabo02 {
	border: 1px solid #ce207a;
	margin: 0 0 24px;
	padding: 16px 24px;
}
#content dl.metabo02 dt {
	font-weight: bold;
	color: #ce207a;
}
#content dl.metabo02 dd {
	margin: 0;
	line-height: 1.6;
}


/*----------------------------------------------------------------------
 線虫N-NOSE
----------------------------------------------------------------------*/
#content ul.pamphlet {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 24px;
	margin: 24px 24px 40px;
	padding: 0;
}
#content .pamphlet li a {
	display: block;
	padding: 8px 40px;
	border: 1px solid #006eb0;
	border-radius: 100px;
	text-decoration: none;
	transition: 0.2s;
}
#content .pamphlet li a:hover {
	background-color: #cdebfc;
	opacity: 1;
}

#content ol.n-nose_flow {
	margin: 8px 8px 24px;
	list-style-type: none;
}
#content ol.n-nose_flow li {
	margin-bottom: 24px;
	padding: 0 0 0 38px;
	position: relative;
}
#content ol.n-nose_flow li:nth-last-of-type(1) {
	margin-bottom: 0;
}
#content ol.n-nose_flow li::before {
	content: '';
	padding: 2px 10px;
	background-color: #00b0f0;
	border-radius: 100%;
	color: #fff;
	font-family: Arial, Helvetica, "sans-serif";
	position: absolute;
	top: -2px;
	left: 0;
}
#content ol.n-nose_flow li:nth-of-type(1)::before {
	content: '1';
}
#content ol.n-nose_flow li:nth-of-type(2)::before {
	content: '2';
}
#content ol.n-nose_flow li:nth-of-type(3)::before {
	content: '3';
}
#content ol.n-nose_flow li::after {
	display: block;
	content: '';
  width: 16px;
  height: 10px;
	background-color: #ce207a;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
	position: absolute;
	bottom: -17px;
	left: 100px;
}
#content ol.n-nose_flow li:nth-last-of-type(1)::after {
	display: none;
}


/*----------------------------------------------------------------------
 契約施設のご案内
----------------------------------------------------------------------*/
#content .shisetsu_bg {
	background: #f7f6ea;
	padding: 1px 10px 17px 15px;
	margin: 20px 0 0;
}

table.saunaspa {
	width: 100%;
	margin-bottom: 8px;
}
table.saunaspa th,
table.saunaspa td {
	padding: 12px 16px;
	background: #fff;
	border: 1px solid #ccc;
}
table.saunaspa th {
	text-align: center;
}
table.saunaspa thead th {
	font-weight: 700;
}
table.saunaspa thead td {
	width: 40%;
	background: none;
	border-top: 0;
	border-left: 0;
	text-align: center;
}
table.saunaspa .special_price {
	background: #fff0f0;
	color: red;
	font-weight: 700;
}


/*----------------------------------------------------------------------
 アクセス
----------------------------------------------------------------------*/
#content .gmap {
	min-height: 480px;
	margin-bottom: 16px;
}
#content .gmap iframe {
  width: 100%;
	height: 480px;
	margin: 0;
	padding: 0;
}


/* 財政報告
=============================================================================*/
#content .finance_box div {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 32px;
	padding: 24px;
	border-bottom: 1px dotted #ccc;
}
#content .finance_box div:nth-last-of-type(1) {
	border-bottom: 0;
}
#content dl.finance_box,
#content .finance_box dt,
#content .finance_box dd {
	margin: 0;
	padding: 0;
}
#content .finance_box dt {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 288px;
}
#content .finance_box dt a {
	display: block;
	width: 100%;
	padding: 16px;
	border: 1px solid #ccc;
	border-radius: 4px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
}
#content .finance_box dt a:hover {
	border: 1px solid #ccc;
	background: #cdebfc;
	opacity: 1;
}
#content .finance_box dd {
	width: calc(100% - 320px);
}


/*----------------------------------------------------------------------
 お問い合わせフォーム
----------------------------------------------------------------------*/
#content .contact {
	border-top: 1px solid #ededed;
}
#content .contact div {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 32px;
	padding: 24px;
	border-bottom: 1px solid #ededed;
}
#content .contact dt,
#content .contact dd {
	margin: 0;
	padding: 0;
}
#content .contact dt {
	display: flex;
	align-items: flex-start;
	width: 240px;
}
#content .contact dd {
	width: calc(100% - 272px);
}
#content .contact .hissu {
	display: block;
	margin-left: auto;
	padding: 2px 8px;
	background-color: #da2828;
	border-radius: 4px;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 500;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-appearance: none;
  max-width: 100%;
}
input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}

#content .contact input[type="text"],
#content .contact input[type="email"],
#content .contact input[type="tel"],
#content .contact textarea {
	width: 100%;
	padding: 8px;
	outline: none;
  background: #f9f9f9f9;
	border: 1px solid #ddd;
	border-radius: 4px;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	resize: vertical;
}
#content .contact textarea {
	min-height: 4rem;
}
#content .contact select {
  padding: 8px;
  background: #f9f9f9f9;
  border: 1px solid #ddd;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

#content .request_box {
  width: 100%;
  margin: auto;
	text-align: center;
}
#content .request_box button {
	width: 12em;
	height: 3em;
	margin: 0 5px;
	background: #0077ca;
  transition: .2s;
	border: none;
	color: #fff;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 1rem;
	line-height: 1;
}
#content .request_box button:hover {
	opacity: .7;
}

#content div.request {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 16px;
	margin: 32px 0 16px;
	text-align: center;
}
#content input.btn_request {
	min-width: 14em;
  padding: 16px 24px;
  background: #39b54a;
  border-radius: 4px;
  border: none;
  color: #fff;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 1rem;
  line-height: 1.2;
	transition: .2s;
}
#content input.btn_request:hover {
	opacity: 0.7;
}

/* Erroes */
ul.error,
ul.warn {
	margin: 0 10px 20px;
	padding: 10px;
	background: #fbd7d7;
}
ul.error li,
ul.warn li {
	color: #da2828;
	line-height: 1.3;
}

div.info {
	margin: 0 10px 20px;
	padding: 10px;
	background: #e7f6fc;
	color: #288dda;
	line-height: 1.3;
}


/*----------------------------------------------------------------------
 医療費控除を受けましょう！
----------------------------------------------------------------------*/
#content .selfmedication_box {
	display: flex;
	align-items: flex-start;
	gap: 0 24px;
}
#content .selfmedication_box > div:nth-of-type(1) {
	width: calc(100% - 200px);
}
#content .selfmedication_box div:nth-of-type(2) {
	width: 200px;
	padding: 10px 16px;
	border: 1px solid #ccc;
	border-radius: 8px;
	text-align: center;
}
#content .selfmedication_box div:nth-of-type(2) .selfmedication_text {
	margin-top: 6px;
	font-size: 0.75rem;
	line-height: 1.6;
}

#content li.koujotaishou {
	list-style-type: none !important;
	margin-bottom: 0;
}
#content li.koujotaishou ul {
	display: flex;
	column-gap: 30px;
	margin-left: 0;
	margin-bottom: 0.5rem;
}


/*----------------------------------------------------------------------
 家計をたすけるジェネリック医薬品
----------------------------------------------------------------------*/
#content dl.generic dt {
	margin: 16px 8px 8px;
	background: url("../images/generic/img_generic03.png") no-repeat left center;
	padding: 8px 0 8px 70px;

}
#content dl.generic dt span {
	display: inline-block;
	background-color: #FC9;
	border-radius: 16px;
	padding: 8px 16px;
}
#content dl.generic dd {
	margin-left: 16px;
}


/*----------------------------------------------------------------------
 広報誌
----------------------------------------------------------------------*/
#content .kenpodayori {
  display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 32px;
}
#content .kenpodayori .kenpodayori_item:nth-of-type(1) {
	width: 340px;
  text-align: center;
}
#content .kenpodayori .kenpodayori_item:nth-of-type(1) img {
  border: 1px solid #ccc;
}
#content .kenpodayori .kenpodayori_item:nth-of-type(2) {
  width: calc(100% - 356px);
}
#content ul.back_number {
  margin: 12px 0 24px 32px;
  list-style-type: disc;
}


/*----------------------------------------------------------------------
 個人情報保護方針
----------------------------------------------------------------------*/
#content .policy {
	margin: 24px 0 32px;
}
#content .policy li {
	margin-bottom: 8px;
}


/*----------------------------------------------------------------------
 リンク集
----------------------------------------------------------------------*/
#content ul.link_list li {
	display: flex;
	margin: 0;
	padding: 1px 0;
	border-bottom: 1px dotted #ccc;
}
#content ul.link_list li a {
	display: flex;
	width: 100%;
	position: relative;
	padding: 16px 16px 16px 32px;
	text-decoration: none;
	color: #222;
}
#content ul.link_list li a::before {
  font-family: "Font Awesome 6 Free";
  content: "\f0a9";
  display: block;
  color: #0081cc;
	font-size: 0.75rem;
  font-weight: 900;
	position: absolute;
	top: 20px;
	left: 16px;
}
#content ul.link_list li a:hover {
	background-color: #cdebfc;
	opacity: 1;
}
#content ul.link_list li div {
	width: 40%;
}
#content ul.link_list li .url {
	width: 60%;
	margin-left: auto;
	color: #006eb0;
}


/*----------------------------------------------------------------------
 サイトマップ
----------------------------------------------------------------------*/
#content .sitemap ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 0 24px;
	gap: 8px 40px;
}
#content .sitemap li {
	width: calc(100% / 3 - 28px);
	margin: 0;
  padding-left: 0.6em;
  text-indent: -0.6em;
}
#content .sitemap li:before {
  font-family: "Font Awesome 6 Free";
  content: "\f0a9";
  display: inline-block;
  padding-right: 4px;
  color: #0081cc;
	font-size: 0.75rem;
  font-weight: 900;
}