@charset "utf-8";

/* Remove extra space from headings */
h2,
h3,
h4 {
	line-height: 1;
	margin: 0;
	padding: 0;
}

/* ==================================================
PC
================================================== */

/* ========== トップページ ========== */

/* Start Header  */

.tpl_site_index #header{
	width: 100%;
	z-index: 9;
	position: absolute;
	background: transparent;
}

.tpl_site_index #head_up{
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	background: transparent;
	padding: 0;
}

.tpl_site_index .head_grid{
	max-width: 1046px;
	margin: 0;
	margin-left: auto;
	grid-template-columns: 217px 1fr;
	align-items: start;
	grid-column-gap: 35px;
}

.tpl_site_index .header_nav ul{
	margin-top: 29px;
}

.tpl_site_index #head_logo h1{
	padding-top: 39px;
}

.tpl_site_index #head_search{
	margin-top: 20px;
	position: unset;
}

.tpl_site_index .header_nav ul li.h_support{
	gap: 18px;
}

.font_size_changed .tpl_site_index .header_nav ul li.h_support{
	margin-left: 0;
}

.tpl_site_index .header_nav ul li[class^="h_"]{
	margin: 0 0 0 20px;
}

.tpl_site_index .header_nav ul li.h_main{
	padding-left: 26px;
	margin-left: 0;
}

.tpl_site_index .header_nav ul li.h_lang{
	padding-left: 25px;
}

.header_mv{
	min-height: 700px;
}

.tpl_site_index #head_logo img{
	height: auto;
	min-height: 192px;
}

#mainimg_box img{
	width: 100%;
	height: auto;
	min-height: 700px;
	object-fit: cover;
}

/* End Header  */

.tpl_site_index #mymainback_bg {
	background: url("/img/sites/smartwellness/top/smart_wellness_bg_img.png");
	background-position: top center;
	background-repeat: repeat-y;
	background-size: 100%;
}

/* 非表示 */
#footstep_wrap {
	display: none !important;
}

/* スライドショー */
#top_photo_wrap {
	overflow: hidden;
}

#top_photo {
	width: 1080px;
	margin: 0px auto;
}

#top_photo_list .photo img {
	width: 100%;
	height: auto;
	vertical-align: top;
}

#top_photo_list .photo a:link,
#top_photo_list .photo a:visited {
	background: #333333;
}

#top_photo_list .photo a {
	display: block;
	color: inherit;
	text-decoration: none;
}

#top_photo_list .photo span.photo_caption {
	display: block;
	background: #333333;
	color: #ffffff;
	padding: 5px 20px;
}

#top_photo_list .photo span.photo_caption:empty {
	padding: 0px;
}

#top_photo_list .photo span.photo_caption span {
	color: inherit !important;
}

/* スライドショー（3枚表示） */
#top_photo.triple #top_photo_list {
	width: calc(1080px * 3);
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
}

/* スライドコントロールボタン */
*[id*="_control_box"] {
	margin: 10px 0px 0px;
	padding: 10px 0px;
}

*[id*="_control_box"] button[id*="_control_"] {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 5px 0px 0px;
	padding: 0px;
	width: 30px;
	height: 30px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	border: 1px solid #ffffff;
	color: #ffffff;
	background-color: #333333;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 8px auto;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
}

*[id*="_control_box"] button[id*="_control_prev"] {
	background-image: url("/img/top/photo/btn_slide_prev.png");
}

*[id*="_control_box"] button[id*="_control_next"] {
	background-image: url("/img/top/photo/btn_slide_next.png");
}

*[id*="_control_box"] button[id*="_control_pause"] {
	background-image: url("/img/top/photo/btn_slide_stop.png");
}

*[id*="_control_box"] button[id*="_control_play"] {
	display: none;
	background-image: url("/img/top/photo/btn_slide_play.png");
}

/* スライドナビゲーションボタン */
*[id*="_control_navigation"] {
	display: inline-block;
	vertical-align: middle;
	margin-right: 20px;
}

ul.slick-dots {
	display: inline-block;
	vertical-align: middle;
	margin: 0px;
	padding: 0px;
	list-style: none;
}

ul.slick-dots li {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 3px;
	padding: 2px;
}

ul.slick-dots li button {
	display: block;
	margin: 0px;
	padding: 0px;
	width: 20px;
	height: 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 100%;
	text-indent: -9999em;
	text-align: left;
	overflow: hidden;
	border: 1px solid #ffffff;
	background: #cccccc;
	color: #333333;
}

ul.slick-dots li.slick-active button {
	background: #333333;
	color: #ffffff;
}

/* 新着情報 */
.section_information {
	background:rgba(255, 255, 255, 0.6);
	margin: 40px 0px;
}

.color_change .section_information {
	background: none;
}

.section_information_wrapper {
	margin: 0 50px;
	display: flex;
	gap: 1.1rem;
	align-items: center;
}

.section_information_date {
	display: flex;
	align-items: center;
	width: 22rem;
}

.section_information_date .article_date {
	font-size: 1.4rem;
}

.section_information_text {
	width: calc(100% - 24.5rem);
}

.section_information_container {
	max-width: 1080px;
	margin: 0 auto;
	padding: 60px 20px 40px;
}

.section_information h2 {
	margin: 0px;
	padding: 0px;
	border: none;
	border-radius: 0;
	background: none;
	font-size: 2.4rem;
}

.section_information p.no_data {
	margin: 0px;
	padding: 20px 0px;
}

.section_information_list ul {
	margin: 0px;
	padding: 20px 0px 30px;
	list-style: none;
}

.section_information_list ul li {
	width: 100%;
	display: table;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 20px 0;
	border-bottom: 1px dashed #333333;
}

.section_information_list ul li>span {
	display: table-cell;
	vertical-align: top;
}

.section_information_list ul li span a:link,
.section_information_list ul li span a:visited {
	color: #333333;
}

.section_information_list ul li>span a {
	display: block;
}

.section_information_list ul li>span.article_date {
	width: calc(11em + 10px);
	font-size: var(--fontsize-detail-small, 1.6rem);
	padding-top: 0.1rem;
}

.section_information_list img.icon_new {
	vertical-align: baseline;
	margin-left: 12px;
}

/* 新着情報（文字拡大時） */
.font_size_changed .section_information_list ul li,
.font_size_changed .section_information_list ul li>span {
	display: block;
}

.font_size_changed .section_information_list ul li>span.article_date {
	width: auto;
	padding-top: 0px;
}

/* 新着情報（一覧 / RSS） */
.section_information_list div.link_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 20px;
}

.section_information_list div.link_box span {
	display: inline-block;
	vertical-align: top;
	width: 260px;
	max-width: 100%;
}

.section_information_list div.link_box span a:link,
.section_information_list div.link_box span a:visited {
	color: #333333;
}

.section_information_list div.link_box span a {
	display: block;
	border: 1px solid transparent;
	border-radius: 0;
	background: #ffffff;
	color: #333333;
	font-size: var(--fontsize-main-small, 1.5rem);
	line-height: 1.8rem;
	text-decoration: none;
	margin: 0px;
	padding: 10px 20px;
	text-align: center;
}

.section_information_list div.link_box span a:hover,
.section_information_list div.link_box span a:focus {
	text-decoration: underline;
}


.section_information_list div.link_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 20px;
	justify-content: end;
}

.link_ichiran a {
	height: 4.5rem;
	font-size: 1.4rem;
	font-weight: bold;
	border: 1px solid #333333;
	display: flex;
	align-items: center;
	border-radius: 2.3rem;
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
	will-change: box-shadow;
	-webkit-transition: box-shadow 0.4s ease;
	-o-transition: box-shadow 0.4s ease;
	transition: box-shadow 0.4s ease;
	min-width: 16.3rem;
	position: relative;
	padding-left: 30px;
}

.link_ichiran a:link,
.link_ichiran a:visited {
	color: #333333;
	text-decoration: none;
}

.link_ichiran a:hover,
.link_ichiran a:focus {
	text-decoration: underline;
}

.link_ichiran a::after {
	content: "";
	position: absolute;
	width: 1.3rem;
	height: 1.2rem;
	background: url("/img/sites/smartwellness/common/footer_down_arr.png") no-repeat center / contain;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

.tpl_site_index #mainimg {
	width: unset;
	margin: unset;
}
/* action plan start */

.action_plan {
	max-width: 1120px;
	padding: 0 20px;
	margin-inline: auto;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
	margin-top: -50px;
}

.color_change .action_plan {
	background: transparent !important;
}

.action_plan img {
	width: 100%;
	height: 100%;
}

.action_plan a:link,
.action_plan a:visited {
	color: #333333;
}

.action_plan a {
	text-decoration: none;
}

.ap_card_ttl {
	margin: -45px 0 0 -70px;
	max-width: 398px;
}

.ap_ttl_img_wrp {
	padding: 20px;
	background-color: #fff;
	border: 1px solid #333;
}

.action_plan_img_wrp {
	max-width: 69%;
}

.ap_para {
	margin: 36px 0 42px;
	font-size: 1.8rem;
	color: #333;
	line-height: 1.889;
	letter-spacing: 0.05em;
	text-align: left;
}

.ap_grid {
	display: grid;
	grid-template-columns: auto 39.6%;
	column-gap: 40px;
	padding: 20px 20px 20px 50px;
	border: 1px solid #333;
	border-radius: 30px;
	background-color: #fff7ab;
}

.ap_img_flex {
	display: flex;
	flex-direction: column;
	gap: 10px;
	grid-row: span 3;
	justify-content: center;
}

.ap_img_wrp {
	height: 100%;
	border-radius: 15px;
	overflow: hidden;
	line-height: 0;
}

.font_size_changed .ap_img_wrp {
	height: unset;
}

.yellow_btn {
	background-color: #feec2e;
}

.h_card_btn_yellow {
	width: 38.6rem;
	max-width: 620px;
	height: fit-content;
	margin-top: auto;
}

#main_body h2.detail_ttl{
	margin-bottom: 6px;
}

/* action plan end */

/* health card start */

.health_card_ctnr a:link,
.health_card_ctnr a:visited {
	color: #333333;
}

.health_card_ctnr a {
	text-decoration: none;
}

.green_btn {
	background-color: #9bc936;
}

.blue_btn {
	background-color: #57c0f1;
}

.orange_btn {
	background-color: #f49f13;
}

.pink_btn {
	background-color: #f182ba;
}

.health_card_ctnr {
	max-width: 1120px;
	padding: 0 20px;
	margin-inline: auto;
	box-sizing: border-box;
}

.health_card_ctnr img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.health_card_ctnr .h_card_grid_orange img {
	border-radius: 15px;
}

.health_card_ctnr .h_card_grid_orange .h_card_ttl_orange img {
	border-radius: unset;
}

.h_card_grid {
	margin-top: 60px;
	display: grid;
	column-gap: 40px;
	padding: 20px 20px 20px 50px;
	border: 1px solid #333;
	border-radius: 30px;
	align-content: center;
}

.h_card_grid_green {
	grid-template-columns: auto 39.6%;
	background-color: #d8eab1;
}

.h_card_grid_green img {
	height: auto;
}

.font_size_changed .h_card_grid_green img {
	height: auto;
}

.h_card_grid_blue {
	grid-template-columns: 38.5% auto;
	background-color: #ccecfb;
}

.h_card_grid_orange {
	grid-template-columns: 434px 1fr;
	background-color: #fedfb6;
}

.h_card_grid_pink {
	grid-template-columns: 1fr;
	background-color: #fbdded;
}

.h_card_grid.h_card_grid_pink{
	padding: 20px;
}

.h_card_grid.h_card_grid_pink .h_card_para{
	padding-left: 30px;
}

.h_card_ttl {
	width: 100%;
	padding: 25px 50px;
	margin: -21px 0 0 -51px;
	box-sizing: border-box;
	background-color: #fff;
	border-top-left-radius: 25px;
	border-bottom-right-radius: 25px;
	border: 1px solid #333;
}

.h_card_ttl img {
	object-position: top;
}

.h_card_ttl_green {
	max-width: 522px;
}

.h_card_ttl_blue {
	max-width: 320px;
}

.h_card_ttl_orange {
	max-width: 300px;
}

.h_card_ttl_pink {
	max-width: 355px;
	margin: -21px 0 0 -21px;
}

.h_card_ttl img {
	transform: translate(-1px, -1px);
}

.h_card_para a:link,
.h_card_para a:visited {
	color: #333333;
}

.h_card_para {
	margin: 42px 0;
	font-size: 1.8rem;
	color: #333;
	line-height: 1.889;
	letter-spacing: 0.05em;
	text-align: left;
}

.h_card_btn {
	font-size: 1.6rem;
	color: #333;
	font-weight: bold;
	line-height: 1.2;
	padding: 23px 60px 24px 50px;
	border-top-right-radius: 100vmax;
	border-bottom-right-radius: 100vmax;
	margin-left: -50px;
	position: relative;
	box-sizing: border-box;
	display: flex;
	justify-content: start;
	align-items: center;
	margin-bottom: 10px;
}

.color_change .h_card_btn {
	border: 1px solid rgba(255, 255, 255, 0.5);
}

.h_card_btn_wrapper .h_card_btn.h_card_btn_pink {
	margin-left: -20px;
}

.h_card_btn:hover {
	text-decoration: underline;
}

.h_card_btn::after {
	content: "";
	background-image: url("/img/sites/smartwellness/top/next_arrow.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 35px;
	height: 35px;

	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

.font_size_changed .h_card_btn{
	grid-column: span 2;
}

.h_card_btn_green {
	width: 34.2rem;
	max-width: 620px;
	height: fit-content;
	margin-top: auto;
}

.h_card_btn_blue {
	width: 37.4rem;
	max-width: 620px;
}

.h_card_btn_orange {
	width: 36.5rem;
	max-width: 620px;
}

.h_card_btn_pink {
	width: 39.6rem;
	max-width: 620px;
}

.img_side_grid_ctnr {
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	grid-row: span 2;
}

.img_side {
	display: flex;
	align-items: center;
	grid-row: span 2;
}

.img_side_wrp_special {
	grid-row: span 2;
}

.img_side_wrp_special.top_box_img_wrp {
	height: 225px;
}

.img_side_wrp {
	border-radius: 15px;
	overflow: hidden;
}

.img_wrp_noborder {
	border-radius: unset;
	line-height: 0;
}

.img_wrp_bordersp {
	border-radius: unset;
	line-height: 0;
}

.img_side_grid {
	display: grid;
	grid-template-columns: 46.5% auto;
	gap: 10px;
	align-items: start;
	align-content: start;
}

.img_side_grid_blue {
	grid-template-columns: 51.8% auto;
}


.img_side_pink {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-bottom: 50px;
}

.pink_img_ctnr {
	position: relative;
	border: 1px solid #000;
	border-radius: 15px;
	overflow: hidden;
	height: 100%;
}


.pink_img_ctnr:hover .pink_img_cap {
	text-decoration: underline;
}

.color_change.color_black .pink_img_cap{
	background: #000000 !important;
}

.color_change.color_blue .pink_img_cap{
	background: #0000ff !important;
}

.pink_img_ctnr img {
	object-fit: cover;
}

.cap_badge {
	position: absolute;
	right: 0;
	bottom: 0;
	margin-left: 15px;
}

.pink_img_cap {
	background-color: #fff;
	padding: 12px 60px 11px 25px;
	border-top-left-radius: 15px;
	border-bottom-right-radius: 15px;
	font-size: 1.8rem;
	color: rgb(51, 51, 51);
	font-weight: bold;
	line-height: 1.2;
	text-align: left;
	position: relative;
	margin: 0;
}

.pink_img_cap::after {
	content: "";
	background-image: url("/img/sites/smartwellness/top/next_arrow.png");
	background-size: contain;
	background-repeat: no-repeat;
	width: 25px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}

/* health card end */

/* start event section  */
#main_body .detail_free_flex div.detail_free p,
#main_body .detail_free_flex div.detail_free p a{
	font-weight: bold;
}

#main_body .detail_free_flex div.detail_free p{
	overflow: hidden;
}

#main_body .detail_free_container .detail_free_flex > * {
	width: 100%;
	max-width: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#main_body .detail_free_container .detail_free_flex > div.detail_free {
	max-width: 320px;
}
@media screen and (max-width: 768px) {
	#main_body div[class*="detail_"].detail_free_flex{
		max-width: none;
	}
}

/* end event section  */
/* ========== 背景色変更 ========== */

/* 共通 */
.color_change * {}

/* 黒 */
.color_black * {}

/* 青 */
.color_blue * {}

/* ==================================================
PC ここまで
================================================== */


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1080px) {

	.mv_section {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}

	/* スライドショー */
	#top_photo {
		width: auto;
		margin: 15px 15px 0px;
	}

	/* スライドショー（3枚表示） */
	#top_photo.triple #top_photo_list {
		width: auto;
		left: auto;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}

	.tpl_site_index #header{
		position: absolute;
		width: 100%;
	}

	.tpl_site_index #head_logo h1{
		padding-top: 29px;
	}

	.tpl_site_index .header_nav ul li[class^="h_"]{
		margin: 0;
	}

	.header_mv {
		width: 100%;
		height: 450px;
		min-height: unset;
	}

	.tpl_site_index #head_logo img{
		height: auto;
		min-height: unset;
	}

	#mainimg_box img {
		width: 100%;
		min-height: unset;
		height: 100%;
	}

	/* スライドコントロールボタン */
	*[id*="_control_box"] {
		text-align: center;
	}

	/* スライドナビゲーションボタン */
	*[id*="_control_navigation"] {
		margin: 5px 20px;
	}

	.tpl_site_index #mymainback {
		width: auto;
	}

	/* 新着情報 */
	.section_information {
		padding: 0px;
		margin: 0;
	}

	.section_information h2 {
		margin: 0 0 20px;
		padding: 0;
		font-size: 2rem;
		max-width: 12.8rem;
		width: 100%;
	}

	.section_information h2 img {
		width: 100%;
	}

	.section_information p.no_data {
		padding: 20px;
	}

	.section_information_list ul {
		padding: 0 0 30px;
	}

	.section_information_list img.icon_new {
		margin-left: 16px;
	}

	.section_information_list ul li {
		display: block;
		width: auto;
		margin: 0px;
		padding: 15px 0px;
	}

	.section_information_wrapper {
		margin: 0 20px;
		gap: 0.5rem;
		align-items: start;
		flex-direction: column;
	}

	.section_information_date {
		display: flex;
		align-items: center;
		width: 100%;
	}

	.section_information_text {
		width: 100%;
	}

	.section_information_list ul li>span {
		display: block;
	}

	.section_information_list ul li>span.article_date {
		width: auto;
		padding-top: 0px;
	}

	.section_information_list ul li a {
		display: block;
		font-size: 1.6rem;
	}

	.section_information_list ul li:has(img.icon_new) {
		position: relative;
	}

	.section_information_list ul li:has(img.icon_new)>span.article_date {
		padding-left: 45px;
	}

	/* 新着情報（一覧 / RSS） */
	.section_information_list div.link_box {
		padding: 0;
		gap: 10px;
	}

	.link_ichiran a {
		min-width: 16.84rem;
	}

	.section_information_list div.link_box span {
		width: auto;
		max-width: none;
		min-width: calc(50% - 5px);
	}

	.section_information_list div.link_box span a {
		font-size: var(--fontsize-main-small, 1.3rem);
	}

	.section_information_container {
		max-width: 1080px;
		margin: 0 auto;
		padding: 70px 0 0;
	}

	/* action plan start */
	.action_plan {
		padding: 0;
	}

	.health_card_ctnr {
		padding: 0;
	}

	.ap_grid {
		padding: 20px;
		padding-bottom: 30px;
	}

	.ap_card_ttl {
		margin: -47px 0 0 -30px;
		max-width: 199px;
		max-height: 72px;
		z-index: 2;
	}

	.ap_ttl_img_wrp {
		padding: 3px 6px 3px 10px;
	}

	.ap_img_flex {
		max-width: 335px;
		margin-inline: auto;
	}

	.ap_para {
		margin: 22px 0 -6px 0px;
		font-size: 1.6rem;
		letter-spacing: 0.06em;
	}

	#main_body h2.detail_ttl{
		margin-bottom: 20px;
		margin-top: 20px;
	}

	/* action plan end */

	.img_side_pink {
		gap: 15px;
	}

	.h_card_grid_orange{
		grid-template-columns: 400px 1fr;
	}

	.h_card_ttl {
		width: fit-content;
		padding: 17px 27px 13px 20px;
		margin: -31px 0 0 -21px;
	}

	.h_card_grid {
		padding: 30px 20px;
		margin-top: 40px;
	}

	.h_card_ttl_green {
		border-top-left-radius: 25px;
		max-width: 305px;
	}

	.h_card_ttl_blue {
		max-width: 177px;
	}

	.h_card_ttl_orange {
		max-width: 177px;
	}

	.h_card_ttl_orange {
		max-width: 197px;
	}

	.h_card_ttl_pink {
		max-width: 197px;
		margin: -21px 0 0 -21px;
	}

	.h_card_grid.h_card_grid_pink .h_card_para {
		padding-left: 0;
	}

	.h_card_ttl img {
		object-fit: fill;
	}

	.h_card_para {
		margin: 22px -1px;
		font-size: 1.6rem;
		letter-spacing: 0.05em;
	}

	.h_card_btn {
		margin: 30px 0 0 -20px;
		font-size: 1.5rem;
		padding: 20px 60px 20px 20px;
		margin-right: 6px;
	}

	.h_card_grid_blue {
		grid-template-columns: 45.5% auto;
	}

	.h_card_btn.h_card_btn_green,
	.h_card_btn.h_card_btn_yellow{
		margin-top: 30px;
	}

	.h_card_btn_yellow,
	.h_card_btn_green,
	.h_card_btn_blue,
	.h_card_btn_orange,
	.h_card_btn_pink {
		width: 100%;
		max-width: 335px;
	}

	.font_size_changed .h_card_btn_yellow,
	.font_size_changed .h_card_btn_green,
	.font_size_changed .h_card_btn_blue,
	.font_size_changed .h_card_btn_orange,
	.font_size_changed .h_card_btn_pink {
		max-width: fit-content;
	}

	.img_wrp_bordersp {
		border-radius: 15px;
	}

	.img_side_grid {
		gap: 5px;
		max-width: 400px;
		margin-inline: auto;
	}

	.img_side_pink {
		grid-template-columns: repeat(2, 1fr);
		row-gap: 25px;
		margin-bottom: 0;
	}

	.pink_img_cap {
		font-size: 1.6rem;
		padding: 12px 60px 11px 13px;
		line-height: 1;
	}

	#main_body div[class*="detail_"].detail_free_flex{
		max-width: 690px;
		margin: 0 auto;
	}

	.img_side_wrp_special.top_box_img_wrp{
		height: 114px;
	}

	/* ========== 背景色変更 ========== */

	/* 共通 */
	.color_change * {}

	/* 黒 */
	.color_black * {}

	/* 青 */
	.color_blue * {}

}

/* ==================================================
スマートフォン ここまで
================================================== */

@media screen and (max-width: 768px) {
	.ap_grid {
		grid-template-columns: 1fr;
	}

	.h_card_grid {
		grid-template-columns: 1fr;
		border-radius: 25px;
	}

	.img_side_pink {
		grid-template-columns: 1fr;
	}

	.img_side {
		max-width: 335px;
		justify-self: center;
	}

	#main_body div[class*="detail_"].detail_free_flex{
		max-width: 37.5rem;
		justify-content: center;
		width: 100%;
	}

	.ap_card_ttl{
		margin: -47px 0 0 -27px;
		position: absolute;
	}

	.header_mv {
		width: 100%;
		height: 316px;
	}

	.tpl_site_index #head_logo a{
		padding-top: 25px;
	}

	.font_size_changed .h_card_btn{
		grid-column: unset;
	}
}

@media screen and (max-width: 376px) {
	.header_mv {
		width: 100%;
		height: 245px;
	}

	.font_size_limit_max .link_ichiran a{
		min-width: 12.84rem;
	}

	.h_card_btn_pink{
		width: 104%;
		max-width: 335px;
	}

	.h_card_btn_yellow{
		width: 101%;
		max-width: 335px;
	}
}

@media screen and (max-width: 370px) {
	.pink_img_cap {
		font-size: 1.2rem;
	}

	.h_card_btn {
		font-size: 1.2rem;
	}
}