/* ==========================================================================
   m5-medical.com 共通パーツ CSS
   本番サイトのヘッダー／注目ワード／フッターのスタイルをそのまま流用しています。
     - グローバルベース : Css/imports/reset.css・base.css より必要分を抜粋
     - PC (769px〜)     : PC版ページのインラインスタイル
     - SP (〜768px)     : スマートフォン版ページのインラインスタイル
   ========================================================================== */

/* ---- グローバルベース ---- */
html {
	/* 本番 Css/imports/base.css と同じ。ヘッダー／フッター内の rem 指定を一致させるため */
	font-size: 62.5%;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
body {
	/* 本番 Css/imports/base.css の body 指定をそのまま使用 */
	margin: 0;
	color: #000;
	background: #fff;
	font-size: 1.6rem;
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

/* 本番 jmsys-common2025.css の line-height 指定（ヘッダー・フッターのみに適用） */
.wrap-head__da ul,
.wrap-head__da li,
.wrap-head__da dl,
.wrap-head__da dt,
.wrap-head__da dd,
.wrap-head__da p,
.wrap-head__da a,
.wrap-head__da span,
.popular_keyword,
.popular_keyword ul,
.popular_keyword li,
.popular_keyword p,
footer,
footer ul,
footer li,
footer dl,
footer dt,
footer dd,
footer p {
	line-height: 1.5;
}

/* 本番 jmsys-common2025.css の p 指定（ヘッダー・注目ワード内のみ） */
.wrap-head__da p,
.popular_keyword p {
	padding: 0 0.5em 0;
	margin-bottom: 1.5rem;
}
main {
	display: block;
}
img {
	border: none;
	vertical-align: middle;
	max-width: 100%;
}
p {
	margin: 0;
	padding: 0;
}
dl, dt, dd {
	margin: 0;
	padding: 0;
}
ul, li {
	margin: 0;
	padding: 0;
	list-style: none;
}
a {
	outline: none;
	color: #333;
	text-decoration: none;
}
a:visited,
a:hover,
a:active {
	text-decoration: none;
}
/* 本番 reset.css(normalize) のフォーム部品指定 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}
input, select, textarea, span {
	vertical-align: middle;
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/* ---- .search コンポーネントのベース（SmartPhone/Css/jmsys-common2025.css より） ---- */
.search {
	padding: 0 10px;
}
.search .search-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1000px;
	background-color: #E9E9E9;
	padding: 0;
	margin: 0 auto;
}
.search .search-item .input-area {
	flex-grow: 1;
	position: relative;
}
.search .search-item .input-area input {
	width: 100%;
	padding: 12px 8px 12px 40px;
	border-radius: 4px;
	font-size: 14px;
	border: none;
	background-color: #E9E9E9;
}
.search .search-item .btn-area {
	min-width: 80px;
	background-color: #C71A41;
	padding: 4px 0;
}
.search .search-item .btn-area a,
.search .search-item .btn-area button {
	display: block;
	width: 100%;
	color: #fff;
	font-size: 1rem;
	padding: 8px;
	text-align: center;
	background: none;
	border: 0;
	cursor: pointer;
}
.search .search-item .btn-area button img {
	margin: 0 auto;
}

/* ---- PC / SP で出し分けるパーツ ---- */
.search--sp,
.wrap-head__da .header_drawer {
	display: none;
}

/* ==========================================================================
   PC（769px 以上）— 本番サイト PC版のヘッダー／フッタースタイル
   ========================================================================== */
@media screen and (min-width: 769px) {
	#aspnetForm {
		overflow-y: inherit;
		height: inherit;
	}
	.pointup {
		text-align: center;
		margin-bottom: 0;
		padding: 0;
	}
	.pointup img {
		width: 100%;
		height: auto;
		display: block;
	}
	#Header {
		position: sticky;
		top: 0;
		z-index: 999;
		background: #fff;
		transition: transform .3s ease;
	}
	#Header.is-hide {
		transform: translateY(-100%);
	}
	header.wrap-head__da {
		width: 100%;
		background: #fff8f2;
	}
	header.wrap-head__da .head_inner {
		background: #fff8f2;
	}
	header.wrap-head__da .head_inner2 {
		background: #f7f9fc;
		font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
		box-shadow: inset 0 2px 7px rgba(0, 0, 0, 0.2);
	}
	header.wrap-head__da .col_top,
	header.wrap-head__da .col_second {
		width: 100%;
		max-width: 1230px;
		margin: 0 auto;
		position: relative;
		box-sizing: border-box;
	}
	header.wrap-head__da h1,
	header.wrap-head__da .logo {
		margin: 0;
	}
	header.wrap-head__da h1 img,
	header.wrap-head__da .logo img {
		display: block;
		height: 46px;
		width: auto;
	}
	.wrap-head__da .col_top {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 15px;
	}
	.wrap-head__da .col_top_r {
		display: flex;
		gap: 10px;
	}
	.wrap-head__da .col_top_r .icon a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-size: 14px;
		color: #330008;
	}
	.wrap-head__da .col_top_r .icon1 a {
		color: #167a68;
	}
	.wrap-head__da .col_top_r .icon2 a {
		color: #bb5457;
	}
	.wrap-head__da .col_top_r .icon3 a {
		color: #e8823e;
	}
	.wrap-head__da .col_top_r .icon a p {
		margin: 0;
	}
	.wrap-head__da .col_top_r .icon img {
		height: 26px;
		width: auto;
	}
	.wrap-head__da .col_top_r span {
		display: block;
	}
	.wrap-head__da .col_second {
		position: relative;
		padding: 0;
		background: #f8f7f7;
	}
	.wrap-head__da .header_menu {
		display: flex;
		align-items: center;
		width: 100%;
		font-size: 20px;
		font-weight: 500;
		color: #330008;
		background: #f7f9fc;
		box-shadow: inset 0 2px 7px rgba(0, 0, 0, 0.2);
	}
	.wrap-head__da .header_link {
		position: static;
		width: calc(100% / 7);
		border-right: 1px solid #ccc;
	}
	.wrap-head__da .header_link:first-child {
		border-left: 1px solid #ccc;
	}
	.wrap-head__da .header_link > a {
		padding: 15px 0;
		display: flex;
		align-items: center;
		justify-content: center;
		transition: all .3s;
		font-size: 16px;
		color: #330008;
	}
	.wrap-head__da .header_link > a:hover {
		background: #d3d3d3;
	}
	.wrap-head__da .header_link > a:active {
		color: #fff;
	}
	.wrap-head__da .header_link span {
		font-size: 16px;
		padding-left: 8px;
	}
	.wrap-head__da .header_acc-wrap {
		position: absolute;
		top: 100%;
		left: calc(50% - 50vw);
		width: 100vw;
		display: none;
		background-color: #fff;
		z-index: 10;
		padding: 30px 0;
		box-sizing: border-box;
	}
	.wrap-head__da .header_acc-inner {
		width: 100%;
		max-width: 1230px;
		margin: 0 auto;
		padding: 0 15px;
		box-sizing: border-box;
	}
	.wrap-head__da .header_acc-area {
		position: relative;
		padding-bottom: 60px;
	}
	.wrap-head__da .header_acc-area.area3 {
		padding-bottom: 0;
	}
	.wrap-head__da .header_acc-area.area2 .header_acc-list {
		padding-bottom: 90px;
	}
	.wrap-head__da .header_acc-list,
	.wrap-head__da .header_acc-list2 {
		display: none;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.wrap-head__da .header_acc-area.area3 .header_acc-list {
		justify-content: flex-start;
		gap: 30px;
	}
	.wrap-head__da .header_acc-list2 li {
		width: 25%;
		padding: 5px;
		box-sizing: border-box;
	}
	.wrap-head__da .header_acc-list2 li:first-child {
		width: 100%;
	}
	.wrap-head__da .header_acc-list2 li:first-child p {
		padding: 0;
		margin: 0;
	}
	.wrap-head__da .header_acc-list2 li a {
		padding: 5px 15px;
		border: 1px solid #ccc;
		display: block;
		font-size: 14px;
	}
	.wrap-head__da .header_acc-btn-wrap {
		position: absolute;
		right: 0;
		bottom: 0;
	}
	.wrap-head__da .header_acc-toggle {
		background: #fff;
		color: #330008;
		border: 1px solid #330008;
		padding: 15px 30px 15px 20px;
		border-radius: 30px;
		cursor: pointer;
		font-size: 14px;
		transition: all .3s;
	}
	.wrap-head__da .header_acc-toggle:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 5px);
		right: 15px;
		transition: all .3s;
	}
	.wrap-head__da .header_acc-toggle:hover {
		opacity: .7;
	}
	.wrap-head__da .header_acc-list h3 {
		border-bottom: 0;
		padding: 0 0 10px;
		margin: 0;
	}
	.wrap-head__da .header_acc-list ul {
		font-size: 16px;
		font-weight: normal;
	}
	.wrap-head__da .header_acc-list ul li:not(:last-child) {
		border-bottom: 1px solid #ddd;
	}
	.wrap-head__da .header_acc-list a {
		display: block;
		padding: 5px 10px;
	}
	.wrap-head__da .header_acc-list h3 a {
		padding: 3px 30px 3px 20px;
	    font-weight: bold;
		color: #330008;
		border: 1px solid #330008;
		border-radius: 5px;
	    font-size: 18px;
		position: relative;
		transition: all .3s;
	}
	.wrap-head__da .header_acc-list h3 a:hover {
		background: #d3d3d3;
	}
	.wrap-head__da .header_acc-list h3 a:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 5px);
		right: 10px;
		transition: all .3s;
	}
	.wrap-head__da .header_acc-list ul a {
		position: relative;
		padding: 5px 10px 5px 15px;
	}
	.wrap-head__da .header_acc-list ul a:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 4px);
		left: 0;
	}
	.wrap-head__da .search {
		padding: 0;
		margin: 0;
	}
	.wrap-head__da .search .search-item {
		border-radius: 5px;
		overflow: hidden;
		border: 1px solid #330008;
	}
	.wrap-head__da .search .search-item .input-area::before {
		display: none;
	}
	.wrap-head__da .search .search-item .input-area input {
		border-radius: 5px 0 0 5px;
		padding: 15px 20px;
		background: #fff;
	}
	.wrap-head__da .search .search-item .btn-area {
		padding: 2px 0;
		min-width: 50px;
		background: #330008;
	}
	.popular_keyword {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 15px;
		padding: 15px 0;
		color: #330008;
		background: #fff;
		transition: transform .3s ease, opacity .3s ease;
	}
	.popular_keyword.is-hide {
		transform: translateY(-100%);
		opacity: 0;
		pointer-events: none;
	}
	.popular_keyword > p {
		margin-bottom: 0;
	}
	.popular_keyword .popular_keywords_list {
		display: flex;
		gap: 10px;
	}
	.popular_keyword .popular_keywords_list a {
		background: #fff;
		color: #330008;
		border-radius: 15px;
		border: 1px solid #330008;
		padding: 5px 30px;
	}

	/* ---- footer レイアウト（Css/imports/base.css より） ---- */
	/* ----- フッター */
	footer {
	    padding: 30px 15px 0;
	    font-size: 0.9em;
	}
	footer p {
	    margin: 0;
	    padding: 0;
	}
	footer .fwb {
	    font-weight: bold;
	    padding-bottom: 8px;
	}
	footer .foot_logo,
	footer .foot_bnr {
	  width: 84%;
	  padding-bottom: 15px;
	}
	footer .col_wrap {
	    display: flex;
	}
	footer .col_wrap > div {
	    width: 16%;
	}
	footer .col_wrap > .col1 {
	    width: 36%;
	}
	footer .sns_col3 {
	    display: flex;
	    align-items: center;
	    gap: 8px;
	    padding-bottom: 15px;
	}
	footer .sns_col3 > a {
	    width: 15%;
	    min-width: 45px;
	}
	footer .col_wrap a {
	    transition: all .3s;
	}
	footer .col_wrap a:hover {
	    opacity: .7;
	}
	footer li {
	    padding-bottom: 6px;
	    padding-left: 12px;
	    position: relative;
	}
	footer li:before {
	    position: absolute;
	    content: "-";
	    top: -1px;
	    left: 0;
	}
	footer .Copyright {
	    text-align: center;
	    font-weight: bold;
	    font-size: 0.8em;
	    padding: 45px 15px;
	}

	footer {
	        max-width: 1200px;
	        margin: 0 auto;
	    }
	    .bnr_col2 {
	        display: flex;
	        gap: 20px;
	        width: 64%;
	        margin-left: auto;
	    }
	    .bnr_col2 > p {
	        width: calc(50% - 10px);
	    }

	    #fixed_bnr {
	        position: fixed;
	        right: 0;
	        bottom: 10%;
	    }
}

/* ==========================================================================
   SP（768px 以下）— 本番サイト スマートフォン版のヘッダー／フッタースタイル
   ========================================================================== */
@media screen and (max-width: 768px) {
	.search--pc {
		display: none;
	}
	.search--sp,
	.wrap-head__da .header_drawer {
		display: flex;
	}
	/* ドロワー内メニューは初期状態で閉じる */
	.wrap-head__da .header_menus {
		display: none;
	}
	#aspnetForm {
		overflow-y: inherit;
		height: inherit;
	}
	.pointup {
		text-align: center;
		margin-bottom: 0;
		padding: 0;
	}
	.pointup img {
		width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	#Header a:link,
	a:visited,
	a:hover,
	a:active {
		color: #330008;
	}
	#Header,
	#ctl00_BodyHeaderMain_upUpdatePanel {
		position: sticky;
		top: 0;
		z-index: 999;
		background: #fff;
		transition: transform .3s ease;
	}
	#Header.is-hide,
	#ctl00_BodyHeaderMain_upUpdatePanel.is-hide {
		transform: translateY(-100%);
	}
	header.wrap-head__da {
		width: 100%;
		background: #fff8f2;
	}
	header.wrap-head__da .head_inner {
		width: 100%;
		max-width: 1230px;
		margin: 0 auto;
		position: relative;
		padding: 0;
		box-sizing: border-box;
	}
	header.wrap-head__da h1,
	header.wrap-head__da .logo {
		margin: 0;
	}
	header.wrap-head__da h1 img,
	header.wrap-head__da .logo img {
		display: block;
		width: 100%;
		height: auto;
	}
	.wrap-head__da .col_top {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		padding: 15px;
		gap: 8px;
	}
	.wrap-head__da .col_top_l {
		width: 36%;
	}
	.wrap-head__da .col_top_r {
		display: flex;
		align-items: center;
		gap: 10px;
		margin-left: auto;
	}
	.wrap-head__da .col_top_r .icon a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		font-size: 11px;
		color: #330008;
	}
	.wrap-head__da .col_top_r .icon a p {
		margin: 0;
	}
	.wrap-head__da .col_top_r .icon1 a {
		color: #167a68;
	}
	.wrap-head__da .col_top_r .icon2 a {
		color: #bb5457;
	}
	.wrap-head__da .col_top_r .icon3 a {
		color: #e8823e;
	}
	.wrap-head__da .col_top_r .icon img {
		height: 26px;
		width: auto;
	}
	.wrap-head__da .col_top_r span {
		display: block;
	}
	.wrap-head__da .col_second {
		position: relative;
		padding-bottom: 0;
	}
	.wrap-head__da .header_menu {
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap: 0;
		width: 100%;
		font-size: 16px;
		font-weight: 500;
		color: #330008;
	}
	.wrap-head__da .header_link {
		position: static;
		width: 100%;
	}
	.wrap-head__da .header_link > a {
		width: 100%;
		padding: 10px 12px;
		display: flex;
		align-items: center;
		transition: all .3s;
		color: #330008;
		border-bottom: 1px solid #330008;
		box-sizing: border-box;
	}
	.wrap-head__da .header_link > a:hover {
		background: #d3d3d3;
		/* color: #fff; */
	}
	.wrap-head__da .header_link > a:active {
		background: #d3d3d3;
		/* color: #fff; */
	}
	.wrap-head__da .header_link span {
		font-size: 16px;
		padding: 0 8px;
		margin-left: auto;
	}
	.wrap-head__da .header_drawer {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 45px;
		background: transparent;
		border: none;
		cursor: pointer;
		padding: 0;
	}
	.wrap-head__da .header_drawer .drawer-bar {
		display: block;
		width: 20px;
		height: 2px;
		background: #330008;
		border-radius: 1px;
		transition: transform .25s ease, opacity .25s ease;
	}
	.wrap-head__da .header_drawer .drawer-bar + .drawer-bar {
		margin-top: 5px;
	}
	.wrap-head__da .header_drawer .drawer-label {
		margin-top: 10px;
		font-size: 11px;
		line-height: 1.2;
		color: #330008;
	}
	.wrap-head__da .header_drawer.is-open .drawer-bar:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}
	.wrap-head__da .header_drawer.is-open .drawer-bar:nth-child(2) {
		opacity: 0;
	}
	.wrap-head__da .header_drawer.is-open .drawer-bar:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}
	.wrap-head__da .header_menus {
		display: none;
		width: 100%;
		background: #fff;
		box-sizing: border-box;
		max-height: calc(-118px + 100vh);
		overflow-y: auto;
	}
	.wrap-head__da .header_menus.is-open {
		display: block;
	}
	.wrap-head__da .header_acc-wrap{
		position: static;
		width: 100%;
		left: auto;
		top: auto;
		padding: 0;
		display: none;
		box-sizing: border-box;
		background: #f7f9fc;
	}
	.wrap-head__da .header_acc-area{
		padding-bottom:60px;
	}
	.wrap-head__da .header_acc-area.area3 {
		padding-bottom: 0;
	}
	.wrap-head__da .header_link.is-open>a span{
		transform:rotate(180deg);
		display:inline-block;
	}
	.wrap-head__da .header_link > a span {
		display:inline-block;
		transition:transform .3s;
	}
	.wrap-head__da .header_link > a.is-active span {
		transform:rotate(180deg);
	}
	.wrap-head__da .header_acc-inner {
		width: 100%;
		margin: 0 auto;
		padding: 15px;
		box-sizing: border-box;
	}
	.wrap-head__da .header_acc-area {
		position: relative;
		padding-bottom: 60px;
	}
	.wrap-head__da .header_acc-list,
	.wrap-head__da .header_acc-list2 {
		display: none;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.wrap-head__da .header_acc-list > li {
		width: 100%;
	}
	.wrap-head__da .header_acc-list2 li {
		width: 50%;
		padding: 5px;
		box-sizing: border-box;
	}
	.wrap-head__da .header_acc-list2 li:first-child {
		width: 100%;
	}
	.wrap-head__da .header_acc-list2 li:first-child p {
		padding: 0;
		margin: 0;
	}
	.wrap-head__da .header_acc-list2 li a {
		padding: 10px 15px;
		border: 1px solid #ccc;
		display: block;
		font-size: 14px;
	}
	.wrap-head__da .header_acc-btn-wrap {
		position: absolute;
		right: 0;
		bottom: 5px;
		width: 100%;
	}
	.wrap-head__da .header_acc-toggle {
		background: #fff;
		color: #330008;
		border: 1px solid #330008;
		padding: 10px 20px;
		border-radius: 30px;
		font-size: 14px;
		text-align: center;
		display: block;
		width: 100%;
	}
	.wrap-head__da .header_acc-toggle:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 5px);
		right: 15px;
	}
	.wrap-head__da .header_acc-list h3 {
		border-bottom: 0;
		padding: 0 0 10px;
		margin: 0;
	}
	.wrap-head__da .header_acc-list ul {
		font-size: 16px;
		font-weight: normal;
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		padding-bottom: 15px;
	}
	.wrap-head__da .header_acc-list ul li {
		width: calc(50% - 5px);
	}
	.wrap-head__da .header_acc-list a {
		display: block;
		padding: 5px 10px;
	}
	.wrap-head__da .header_acc-list h3 a {
		padding: 7px 30px 5px 20px;
		font-weight: bold;
		background: #f7f9fc;
		border: 1px solid #330008;
		border-radius: 5px;
		font-size: 16px;
		position: relative;
		width: fit-content;
		transition: all .3s;
		line-height: 1;
	}
	.wrap-head__da .header_acc-list h3 a:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 5px);
		right: 10px;
	}
	.wrap-head__da .header_acc-list ul a {
		position: relative;
		padding: 5px 25px 5px 5px;
		border-bottom: 1px solid #330008;
	}
	.wrap-head__da .header_acc-list ul a:before {
		position: absolute;
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #330008;
		border-right: 1px solid #330008;
		transform: rotate(45deg);
		top: calc(50% - 4px);
		right: 10px;
	}
	.wrap-head__da .search {
		padding: 0;
		margin: 0;
		width: 100%;
	}
	.wrap-head__da .search .search-item {
		border-radius: 5px;
		overflow: hidden;
	}
	.wrap-head__da .search .search-item .input-area {
		border: 1px solid #330008;
		border-right: 0;
		border-radius: 5px 0 0 5px;
	}
	.wrap-head__da .search .search-item .input-area::before {
		display: none;
	}
	.wrap-head__da .search .search-item .input-area input {
		border-radius: 5px 0 0 5px;
		padding: 10px 20px;
		background: #fff;
	}
	.wrap-head__da .search .search-item .btn-area {
		padding: 0;
		min-width: 45px;
		background: #330008;
		border: 1px solid #330008;
	}
	.wrap-head__da .search .search-item .btn-area a {
		padding: 5px 5px 4px;
	}
	.popular_keyword_wrap {
		width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		box-sizing: border-box;
	}
	.popular_keyword {
		display: flex;
		align-items: center;
		gap: 15px;
		padding: 15px;
		color: #330008;
		background: #fff;
		width: max-content;
		min-width: 100%;
		box-sizing: border-box;
		font-size: 12px;
		font-weight: 600;
		transition: transform .3s ease, opacity .3s ease;
	}
	.popular_keyword.is-hide {
		transform: translateY(-100%);
		opacity: 0;
		pointer-events: none;
	}
	.popular_keyword > p {
		margin: 0;
		flex-shrink: 0;
		white-space: nowrap;
	}
	.popular_keyword .popular_keywords_list {
		display: flex;
		gap: 10px;
		flex-shrink: 0;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.popular_keyword .popular_keywords_list li {
		flex-shrink: 0;
	}
	.popular_keyword .popular_keywords_list a {
		background: #fff;
		color: #330008;
		border-radius: 15px;
		border: 1px solid #330008;
		padding: 3px 20px;
		white-space: nowrap;
		display: block;
	}

	.inner_col {
	        display: flex;
	        gap: 15px;
	        align-items: center;
	    }
	    .inner_col img {
	        max-width: 100%;
	    }
	    .inner_col .col_l {
	        width: 70%;
	    }
	    .inner_col .col_r {
	        width: 30%;
	    }
	    .inner_col .inner_col a {
	        padding: 0;
	    }
	    footer .sns_col3 {
	        justify-content: inherit;
	        padding: 0;
	        width: 60%;
	    }
	    footer .sns_col3 > a {
	        width: auto;
	        min-width: 0;
	        max-width: 65px;
	    }
	    footer .foot_logo {
	        width: 100%;
	    }
	    .bnr_col2 {
	        padding-top: 15px;
	        display: flex;
	        flex-wrap: wrap;
	        gap: 20px;
	        width: 100%;
	    }
	    .bnr_col2 > p {
	        width: 100%;
	    }
	    .bnr_col2 a img {
	        display: block;
	        text-align: center;
	        width: 100%;
	    }

	    #fixed_bnr {
	        position: fixed;
	        right: 0;
	        bottom: 5%;
	        width: 30%;
	    }
	    #fixed_bnr p {
	        padding: 0;
	    }
	    #fixed_bnr img {
	        width: 100%;
	    }

	/* ---- footer レイアウト（SmartPhone/Css/base.css より） ---- */
	/* =====================================================================
	* フッター
	* =================================================================== */
	footer {
	    padding: 30px 15px 0;
	    /* font-size: 0.9em; */
	}
	footer p {
	    margin: 0;
	    padding: 0;
	    color: #330008;
	}
	footer .fwb {
	    font-weight: bold;
	    padding: 8px 0;
	}
	footer .foot_logo,
	footer .foot_bnr {
	  width: 80%;
	  margin: 0 auto;
	}
	footer .foot_bnr {
	  text-align: center;
	  padding-bottom: 15px;
	}
	footer .sns_col3 {
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    gap: 8px;
	    padding: 15px 0;
	}
	footer .sns_col3 > a {
	    width: 15%;
	    min-width: 45px;
	}
	footer .sns_col3 img {
	  width: 100%;
	}
	footer .col_wrap a {
	    transition: all .3s;
	    display: block;
	    padding: 5px 0;
	    line-height: 1;
	}
	footer .col_wrap a:hover {
	    opacity: .7;
	}
	footer .col_wrap > div > p {
	  border-top: 1px solid #ccc;
	}
	footer .col_wrap > .col5 {
	  border-bottom: 1px solid #ccc;
	}
	footer li {
	    padding-bottom: 6px;
	    padding-left: 12px;
	    position: relative;
	}
	footer li:before {
	    position: absolute;
	    content: "-";
	    top: 4px;
	    left: 0;
	}
	footer .aco span {
	  position: relative;
	  display: block;
	  width: 100%;
	}
	footer .aco span:before,
	footer .aco span:after {
	  position: absolute;
	  content: "";
	  display: block;
	  background: #330008;
	  transition: all .3s;
	}
	footer .aco span:before {
	  width: 2px;
	  height: 16px;
	  top: 4px;
	  right: 13px;
	}
	footer .aco span:after {
	  width: 16px;
	  height: 2px;
	  top: 11px;
	  right: 6px;
	}
	footer .aco.open span:before {
	  transform: rotate(90deg);
	}
	footer .Copyright {
	    text-align: center;
	    font-weight: bold;
	    font-size: 0.8em;
	    padding: 30px 15px;
	}
}
