@charset "UTF-8";
/* CSS Document */
/*-----------SP-----------*/
@media screen and (max-width:750px) {
	.pc {
		display: none;
	}
	#main {
		padding-bottom: 58px;
		overflow: hidden;
	}
	#main .content {
		margin: 0 10px;
		max-width: inherit;
	}
	#main sup {
		margin-right: 4px;
		font-size: 10px;
	}
	#main .main_img {
		margin-bottom: 10px;
	}
	#main .main_img .img_link {
		width: auto;
		left: 20px;
		right: 20px;
		bottom: 25px;
		gap: 18px;
	}
	#main .main_img .img_link li {
		width: calc((100% - 36px) / 3);
	}
	#main .head_line {
		margin: 0 -20px 36px;
		padding: 65px 30px 0;
		width: auto;
		font-size: 20px;
		line-height: 1.6;
	}
	#main .head_line .title {
		margin-bottom: 11px;
		padding: 7px 25px 6px;
		font-size: 16px;
		background-image: url(../img/bg06_sp.png);
	}
	#main .head_line .small {
		margin-top: 6px;
		font-size: 12px;
	}
	#main .com_list {
		display: block;
	}
	#main .com_list li {
		margin-bottom: 38px;
		width: 100%;
		text-align: center;
	}
	#main .com_list .img {
		margin-bottom: 16px;
	}
	#main .com_list .info {
		margin-bottom: 7px;
		font-size: 18px;
	}
	#main .condition {
		margin-bottom: 17px;
		background: none;
		padding: 0;
		box-sizing: border-box;
	}
	#main .condition .content {
		padding: 32px 28px 40px;
	}
	#main .condition .head_line {
		margin: 0 -15px 15px;
		padding-bottom: 17px;
		border-bottom: none;
		position: relative;
	}
	#main .condition .head_line:after {
		position: absolute;
		left: 20px;
		bottom: 0;
		width: calc(100% - 40px);
		border-bottom: 3px dotted #b1ddff;
		content: "";
	}
	#main .condition .img {
		margin-bottom: 23px;
		height: 48vw;
		display: flex;
		align-items: center;
		overflow: clip;
	}
	#main .condition .img img {
		width: 100%;
	}
	#main .condition .inner {
		margin: 0 0 15px;
		max-width: none;
		font-size: 15px;
		line-height: 1.6;
	}
	#main .condition .qa_box {
		margin: 25px -18px 0;
		max-width: inherit;
	}
	#main .condition .qa_box .sub_box:not(:last-child) {
		margin-bottom: 45px;
	}
	#main .condition .qa_box .photo {
		margin: 0 6px 24px;
		width: auto;
	}
	#main .condition .qa_list li:not(:last-child) {
		margin-bottom: 15px;
	}
	#main .condition .qa_box h3 {
		margin: 0 -10px 17px;
	}
	#main .condition .qa_box h3:after {
		display: none;
	}
	#main .condition .qa_list .ttl {
		font-size: 16px;
	}
	#main .condition .qa_list .ttl .en {
		width: 36px;
	}
	#main .condition .qa_list .ttl .jp {
		padding: 0 12px;
		text-align: left;
	}
	#main .condition .qa_list .txt {
		font-size: 15px;
		line-height: 1.6;
	}
	#main .measurement {
		margin: 0 20px 45px;
	}
	#main .measurement .head_line {
		margin: 0 -55px 10px -55px;
		padding: 23px 80px 10px 80px;
		background: url(../img/3monthslater/bg06_sp.png) no-repeat left 4px / 97px auto, url(../img/3monthslater/bg07_sp.png) no-repeat right top / 86px auto;
		font-size: 20px;
	}
	#main .measurement .img {
		margin-bottom: 20px;
	}
	#main .measurement h3 {
		text-align: left;
		font-size: 16px;
		line-height: 1.6;
	}
	#main .measurement .notes {
		margin-bottom: 38px;
		text-align: left;
		font-size: 14px;
	}
	#main .measurement h4 {
		margin-bottom: 25px;
		font-size: 14px;
	}
	#main .target {
		margin-bottom: 35px;
		padding: 0 8px;
		text-align: left;
	}
	#main .target .head_line {
		margin: 0 auto 55px;
		width: fit-content;
		padding: 32px 10px 40px;
		font-size: 20px;
		background: url(../img/bg09.png) no-repeat 40px 10px / 34px auto, url(../img/3monthslater/bg05_sp.png) no-repeat right top / 104px auto;
	}
	#main .target p {
		margin-bottom: 33px;
		max-width: none;
		font-size: 16px;
		line-height: 1.625;
	}
	#main .target .btn_list {
		padding-top: 0;
		background: none;
	}
	#main .btn_list li {
		margin-bottom: 30px;
	}
	#main .btn_list a {
		padding: 6px 20px 7px;
		width: 288px;
		min-height: 60px;
		font-size: 16px;
		background-size: 20px;
		background-position: right 20px center;
	}
	#main .btn_list .coming_soon {
		font-size: 16px;
		background-size: 20px;
		background-position: right 15px center;
	}
	#main .series .head_line {
		margin: -20px -20px 8px;
		padding: 66px 50px 0;
		background-position: left -25px top 35px, top 0 right -25px;
	}
	#main .series .head_line .small {
		margin-top: 0;
		font-size: 13px;
		line-height: 1.5;
	}
	#main .series .img {
		margin: 0 -10px 20px;
	}
	#main .series .btn_list a {
		padding-right: 35px;
		min-height: 50px;
		font-size: 14px;
	}
}
@media screen and (max-width:374px) {
	#main .head_line .small {
		font-size: 11px;
	}
	#main .condition .qa_box h3,#main .measurement .head_line {
		font-size: 19px;
	}
	#main .com_list .txt,
	#main .goal_box .com_list .txt {
		font-size: 14px;
	}
	#main .condition .head_line {
		margin: 0 -20px 23px;
	}
}
@media screen and (max-width:359px) {
	#main .head_line {
		font-size: 17px;
	}
	#main .target .head_line {
		padding: 32px 0 40px;
		font-size: 18px;
		padding-bottom: 45px;
	}
	#main .condition .qa_box h3,#main .measurement .head_line {
		font-size: 17px;
	}
	#main .measurement .head_line {
		padding: 23px 70px 10px;
	}
}