@charset "Shift_JIS";

/* ------------------------------------
	COMMON
------------------------------------- */
#simulation_check2,
#simulation_check3,
#simulation_frame02,
#simulation_check4,
#simulation_check5,
#simulation_result { display: none;}

body.Popfixed { overflow: hidden;}
.Popfilter { width: 100%; position: fixed; top: 0; left: 0; z-index: -1; background: none; display: none; cursor: pointer;}
.Popfilter.Popfixed { background: rgba(0,0,0,0.6); z-index: 9999; display: block;}
.ReMakePop-Wrapper { width: 100vw; height: 100vh; box-sizing: border-box; position: fixed; top: 0; left: 0; display: none; z-index: -1;}
body.Popfixed .ReMakePop-Wrapper { z-index: 99999;}

span.marur { font-size: 0.6em; vertical-align: top; }

/* ------------------------------------
	PC
------------------------------------- */
@media (min-width: 641px){
	div.contents_ { width: 100% !important;}
	#mainframe_1pane { width: 100% !important; float: none;}
	
	#simulation .for-sp { display: none !important;}
	#simulation * { line-height: 1.6; box-sizing: border-box; color: #333;}
	#simulation img { max-width: 100%;}
	#simulation .visual h1 { height: 340px; font-size: 0; text-indent: -9999px; background: #5bc0c7 url(/cms/simulation/main.jpg) center top no-repeat;}
	#simulation .top-comment { padding: 60px 0;}
	#simulation .top-comment p { font-size: 20px; text-align: center; letter-spacing: 0.05em; line-height: 2.0; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
	#simulation .top-comment p + p { margin-top: 15px;}
	#simulation .top-comment p.memo { font-size: 14px;}
	#simulation h2 { width: 600px; padding: 24px 0 22px; margin: 0 auto 40px; border-radius: 0 0 20px 20px; font-size: 28px; font-weight: bold; line-height: 1.0; text-align: center; color: #fff; background: linear-gradient(100deg, rgba(1,179,205,1) 0%, rgba(90,194,207,1) 50%, rgba(0,121,162,1) 100%); font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; position: relative;}
	#simulation h3 { padding: 20px 0; margin: 0 0 55px; border-radius: 60px; font-size: 26px; line-height: 1.0; text-align: center; letter-spacing: 0.1em; background: #d5edef; color: #007487; font-weight: bold;}
	#simulation h3 * {line-height: 1;color: #007487;	}
	#simulation h3 + p { margin-block: -32px 40px;font-size: 18px; padding-inline: 32px;}
	
	/* Frame */
	#simulation_page_frame { padding: 60px 0; background: #c8e7e9 url(/cms/simulation/bg.jpg) center top repeat-y;}
	#simulation_frame01 { width: 980px; padding: 0 0 1px 0; margin: 0 auto 60px; background: #fff;}
	#simulation_frame01 section { width: 840px; margin: 0 auto 60px;}
	#simulation_frame02 { width: 980px; padding: 0 0 1px 0; margin: 0 auto 60px; background: #fff;}
	#simulation_frame02 section { width: 840px; margin: 0 auto 60px;}
	
	/* SelectList */
	#simulation .select-list { display: flex; flex-wrap: wrap;}
	#simulation .select-list li { text-align: center;}
	#simulation .select-list li input[type="radio"] { display: none;}
	#simulation .select-list li label { min-height: 90px; padding: 4px 0 0 0; margin: 0; border: #007487 2px solid; border-radius: 10px; font-size: 18px; font-weight: bold; line-height: 1.4; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #fff; cursor: pointer; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(0,0,0,0.15); box-sizing: border-box; position: relative;}
	#simulation .select-list li label .small { font-size: 0.7em;}
	#simulation .select-list li label:hover { background: #007487; color: #fff; opacity: 0.7;}
	#simulation .select-list li label:hover span { color: #fff;}
	#simulation .select-list li label img        { transition: 0.3s;}
	#simulation .select-list li label:hover img  { opacity: 0.5;}
	#simulation .select-list li input:checked + label { background: #007487; color: #fff; box-shadow: none;}
	#simulation .select-list li input:checked + label:hover { opacity: 1;}
	#simulation .select-list li input:checked + label * { color: #fff;}
	#simulation .select-list li .alphabet { font-size: 32px; display: block; line-height: 1.2;}
	#simulation .select-list li .kana   { font-size: 15px; display: block;}
	#simulation .select-list li .line01 { font-size: 18px; display: block;}
	#simulation .select-list li .line02 { font-size: 18px; display: block;}
	#simulation .select-list.column2 { width: calc(100% + 20px);}
	#simulation .select-list.column2 li { width: 408px; margin: 0 20px 15px 0;}
	#simulation .select-list.column3 { width: calc(100% + 20px);}
	#simulation .select-list.column3 li { width: 270px; margin: 0 15px 15px 0;}
	#simulation .notice-txt { margin: 20px 0 0 0; font-size: 16px; text-align: center;}
	#simulation .select-list li[class$='set3'],
	#simulation .select-list li[class$='set4'],
	#simulation .select-list li[class$='set5'] { padding-top: 20px; position: relative;}
	#simulation .select-list li[class$='set3'] label,
	#simulation .select-list li[class$='set4'] label,
	#simulation .select-list li[class$='set5'] label { padding-top: 20px; background: #fff !important; opacity: 1.0 !important;}
	#simulation .select-list li[class$='set3'] label::before,
	#simulation .select-list li[class$='set4'] label::before,
	#simulation .select-list li[class$='set5'] label::before { content: ''; width: 80%; padding: 6px; border-radius: 30px; text-align: center; background: #a4d8dd; font-size: 18px; font-weight: bold; color: #007487; display: block; position: absolute; top: -15px; left: calc(10% - 8px); z-index: 10;}
	#simulation .select-list li[class$='set3'] label::before { content: '３点セット';}
	#simulation .select-list li[class$='set4'] label::before { content: '４点セット';}
	#simulation .select-list li[class$='set5'] label::before { content: '５点セット';}
	#simulation .select-list li[class$='set3'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li[class$='set4'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li[class$='set5'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li:has(.down_content) { border: 5px solid #c6ecef; border-radius: 10px; padding: 34px 35px;position: relative; display: flex;flex-flow: column wrap; justify-content: flex-start;}
	#simulation .select-list li:has(.down_content)::after{content: "";display: inline-block;width: 130px;height: 130px;border-radius: 300px;background: no-repeat center / contain #f09082;position: absolute;left: -15px;top: -29px;}
	#simulation .select-list li.down_duck::after {background-image: url(/cms/simulation/l/maru01.png);}
	#simulation .select-list li.down_goose::after {background-image: url(/cms/simulation/l/maru02.png);}
	#simulation .down_content { margin-bottom: 28px;}
	#simulation .down_content_img { width: 100%; margin-bottom: 28px;}
	#simulation .down_content_img:not(:has(*)) { aspect-ratio: 2; background: gray;}
	#simulation .down_content_name {font-size: 20px; font-weight: bold; margin-bottom: 20px;}
	#simulation .down_content_text { text-align: left; font-size: 20px;}
	#simulation .down_content_note {text-align: left;font-size: 16px;margin-top: 16px;}
	#simulation .select-list li:has(.down_content) label { width: calc(100% - 70px); margin-inline: auto;margin-top: auto;}

	/* detail */
	#simulation .detail_content_inner { margin-top: 32px; display: flex; flex-flow: row wrap; align-content: center; justify-content: space-between; align-items: center; gap: 24px 60px; }
	#simulation .detail_content_title { width: 100%; text-align: center; font-size: 20px; font-weight: 700; }
	#simulation .forgore .detail_content_img { width: 350px; }
	#simulation .forpad .detail_content_img { aspect-ratio: .6; width: 210px; }
	#simulation .forpad .detail_content_img img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
	#simulation .detail_content_textwrap { flex: 1; display: flex; flex-flow: column wrap; gap: 32px; }
	#simulation .detail_content_text { font-size: 20px; font-weight: 500; }
	#simulation .detail_content_limk a { font-size: 20px; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; }
	
	/* PopUp */
	#simulation .remake-pop-btn { margin: 15px 0 0 0; text-align: right; line-height: 1.0;}
	#simulation .remake_pop_switch { display: inline-block; position: relative; margin-left: 40px;}
	#simulation .remake_pop_switch span { font-size: 16px; color: #ea5550; text-decoration: underline; display: inline-block; cursor: pointer;}
	#simulation .remake_pop_switch::before { content: ''; width: 16px; height: 16px; border-radius: 20px; background: #ea5550; position: absolute; top: 4px; left: -24px;}
	#simulation .remake_pop_switch span::before { content: ''; width: 8px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: -20px;}
	#simulation .remake_pop_switch span::after  { content: ''; width: 8px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: -20px; transform: rotate(90deg);}
	.ReMakePop-Wrapper .ReMakePop-Frame { width: 800px; height: 70vh; z-index: 9999; position: fixed; top: 15vh; left: calc(50vw - 400px); background: #fff; box-sizing: border-box;}
	.ReMakePop-Wrapper .ReMakePop-Inner { width: 800px; height: 70vh; padding: 50px; overflow-y: scroll; box-sizing: border-box;}
	.ReMakePop-Wrapper h2 { padding: 20px 0; margin: 0 0 30px; border-radius: 60px; font-size: 26px; line-height: 1.0; text-align: center; letter-spacing: 0.1em; background: #d5edef; color: #007487; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
	.ReMakePop-Wrapper .ReMakePop-List { display: flex; justify-content: space-between; flex-wrap: wrap;}
	.ReMakePop-Wrapper .ReMakePop-List li { width: 48%; margin: 0 0 30px 0;}
	.ReMakePop-Wrapper .ReMakePop-List li .name  { padding: 0 0 10px 0; margin: 0 0 15px; border-bottom: #007487 2px solid; font-size: 20px; text-align: center; color: #007487;}
	.ReMakePop-Wrapper .ReMakePop-List li .image { margin: 0 0 10px; text-align: center;}
	.ReMakePop-Wrapper .ReMakePop-List li .image img { max-width: 100%;}
	.ReMakePop-Wrapper .ReMakePop-List li .text  { font-size: 16px; line-height: 1.8;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame { margin: 15px 0 0 0;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame .ttl  { padding: 5px 0; margin: 5px 0 0 0; box-sizing: border-box; font-size: 14px; font-weight: bold;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl    { border: #ddd 1px solid; font-size: 14px; display: flex; justify-content: space-between;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl + dl { border-top: none;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl dt { width: 30%; padding: 5px 10px; font-size: 14px; box-sizing: border-box; background: #eee;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl dd { width: 70%; padding: 5px 10px; font-size: 14px; box-sizing: border-box;}
	.ReMakePop-Wrapper .ReMakePop-Item .image { margin: 0 0 20px; text-align: center;}
	.ReMakePop-Wrapper .ReMakePop-Item .image img { width: 50%; margin: 0 auto;}
	.ReMakePop-Wrapper .ReMakePop-Item .text  { margin: 0 0 20px; font-size: 16px; text-align: center; line-height: 1.8;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top { width: 60px; height: 60px; padding: 0; margin: 0; border-radius: 40px; font-size: 0; background: #007487; cursor: pointer; position: absolute; top: -30px; right: -30px;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top span { color: #fff; font-size: 0;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top::before { content: ''; width: 30px; height: 2px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(-45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.Top::after  { content: ''; width: 30px; height: 2px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom { width: 100px; height: 50px; padding: 0 0 0 15px; margin: 0 auto; border-radius: 10px; font-size: 16px; text-align: center; line-height: 50px; background: #007487; cursor: pointer; position: relative;}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom span { color: #fff;}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom::before { content: ''; width: 14px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(-45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom::after  { content: ''; width: 14px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(45deg);}
	
	/* Result */
	#simulation_result_inner { width: 980px; padding: 0 0 50px 0; margin: 140px auto 60px; background: #fff;}
	#simulation_result h2::after { content: ''; width: 62px; height: 56px; padding: 0; margin: 0; background: url("kirakira.png") left top no-repeat; -webki-background-size: 62px 56px; background-size: 62px 56px; display: block; position: absolute; right: 60px; top: 10px;}
	#simulation_result h2::before { content: ''; border-left: transparent 60px solid; border-right: transparent 60px solid; border-top: #83ccd2 45px solid; display: block; position: absolute; left: calc(50% - 60px); top: -80px;}
	#simulation_result #result_answer { font-size: 50px; font-weight: normal; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; color: #ea5550;}
	#simulation_result #result_answer .price-num { font-size: 50px; font-weight: bold; color: #ea5550;}
	#simulation_result #result_answer .yen  { font-size: 24px; font-weight: normal; color: #ea5550;}
	#simulation_result #result_answer .over { font-size: 40px; font-weight: normal; color: #ea5550;}
	#simulation_result .reform-link { margin: 0 80px; text-align: right;}
	#simulation_result .reform-link a { font-size: 16px; color: #ea5550; text-decoration: underline; display: inline-block; cursor: pointer;}
	#simulation_result #result_comment { padding: 28px 0; margin: 20px 80px 0; border-top: #d8efef 2px solid; border-bottom: #d8efef 2px solid; font-size: 20px; font-weight: normal; text-align: center;}
	#simulation_result #reset_start { text-align: center;}
	#simulation_result #reset_start span { width: 420px; min-height: 90px; padding: 0; margin: 0 auto; border-radius: 10px; font-size: 18px; font-weight: bold; text-indent: -9999px; line-height: 1.4; letter-spacing: 0.05em; color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #007487 url("once_more.png") center center no-repeat; cursor: pointer; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(12,64,78,1); position: relative;}
	#simulation_result #reset_start span:hover { opacity: 0.7;}
	#simulation_result .remake-pop-btn { margin-right: 70px;}
	#simulation_result .for-ja-members { padding: 60px 0; background: #fff; position: relative; bottom: -60px;}
	#simulation_result .for-ja-members p { font-size: 20px; font-weight: bold; text-align: center;}
	
	/* OtherResult */
	#simulation_result_button { width: 980px; margin: 0 auto; display: flex; justify-content: space-around;}
	#simulation #other_buttons .contact-link { width: 420px; margin: 0;}
	#simulation #other_buttons .contact-link a { min-height: 90px; padding: 0; margin: 0; border-radius: 10px; line-height: 1.4; text-decoration: none; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #f08d7e url("select_order.png") center center no-repeat; color: #fff; cursor: pointer; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(165,86,74,1); position: relative; font-size: 0; text-indent: -9999px;}
	#simulation #other_buttons .contact-link a:hover { opacity: 0.7;}
	
	/* Contact */
	#simulation .bottom-info { height: 544px; padding: 60px 0; background: #5bc0c7 url(/cms/simulation/bg2.jpg) center top repeat-y; box-sizing: border-box;}
	#simulation .bottom-info-inner { width: 980px; padding: 50px 40px; margin: 0 auto 60px; background: #fff;}
	#simulation .bottom-info .title { margin: 0 0 20px; text-align: center; font-size: 24px; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; letter-spacing: 0.1em; color: #fff;}
	#simulation .bottom-info .title span { text-align: center; font-size: 30px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; color: #fff;}
	#simulation .bottom-info .message { margin: 0 0 20px 0; text-align: center; color: #ea5550;}
	#simulation .bottom-info .message span { font-size: 20px; display: inline-block; position: relative; color: #ea5550;}
	#simulation .bottom-info .message span::before,
	#simulation .bottom-info .message span::after  { content: ''; width: 1px; height: 34px; background: #ea5550; display: block; position: absolute; bottom: 0;}
	#simulation .bottom-info .message span::before { left:  -30px; transform: rotate(-45deg);}
	#simulation .bottom-info .message span::after  { right: -20px; transform: rotate(45deg);}
	#simulation .bottom-info .contact-list { display: flex; justify-content: space-between;}
	#simulation .bottom-info .contact-list li { width: 47.5%;}
	#simulation .bottom-info .contact-list li .ttl  { padding: 10px; margin: 0 0 20px; font-size: 18px; text-align: center; color: #007487; background: #e2f2f3;}
	#simulation .bottom-info .contact-list li .num  { width: 348px; margin: 0 auto 20px;}
	#simulation .bottom-info .contact-list li .time { font-size: 16px; color: #007487; text-align: center;}
	#simulation .bottom-info .contact-list li .btn  { margin: 45px 24px 0; font-size: 16px; color: #007487; text-align: center;}
	#simulation .bottom-info .contact-list li .btn a{ height: 52px; padding: 0 0 0 10px; border-bottom: #00414c 2px solid; border-radius: 10px; font-size: 20px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; text-align: center; text-decoration: none; line-height: 50px; display: block; background: #007487 url("ico_mail.png") 25px center no-repeat; -webkit-background-size: 28px 20px; background-size: 28px 20px; color: #fff; position: relative; box-sizing: border-box;}
	#simulation .bottom-info .contact-list li .btn a::after { content: ''; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(135deg); transform: rotate(45deg); position: absolute; right: 25px; top: calc(50% - 4px);}
}

/* ------------------------------------
	SP
------------------------------------- */
@media (max-width: 640px){
	#simulation { margin: 0 0 20px;}
	#simulation .for-pc { display: none !important;}
	#simulation * { line-height: 1.6; box-sizing: border-box; color: #333;}
	#simulation img { max-width: 100%; vertical-align: top;}
	#simulation .visual h1 { font-size: 0; text-indent: -9999px; background: #5bc0c7;}
	#simulation .visual h1 img { width: 100%; vertical-align: top;}
	#simulation .top-comment { padding: 40px 0;}
	#simulation .top-comment p { font-size: 16px; text-align: center; letter-spacing: 0.05em; line-height: 1.8; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
	#simulation .top-comment p + p { margin-top: 10px;}
	#simulation .top-comment p.memo { font-size: 12px;}
	#simulation h2 { padding: 14px 0; margin: 0 0 30px; font-size: 20px; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; line-height: 1.0; text-align: center; color: #fff; background: linear-gradient(100deg, rgba(1,179,205,1) 0%, rgba(90,194,207,1) 50%, rgba(0,121,162,1) 100%); position: relative;}
	#simulation h3 { padding: 16px 10px; margin: 0 0 20px; border-radius: 60px; font-size: 16px; line-height: 1.0; text-align: center; background: #d5edef; color: #007487;}
	#simulation h3 * {line-height: 1;color: #007487;	}
	#simulation h3 + p {margin-block: -8px 20px;font-size: 15px;}

	
	/* Frame */
	#simulation_page_frame { padding: 40px 0; background: #c8e7e9 url(/cms/simulation/bg.jpg) center top repeat-y; -webkit-background-size: 100% auto; background-size: 100% auto;}
	#simulation_frame01 { padding: 0 0 1px 0; margin: 0 10px 40px; background: #fff;}
	#simulation_frame01 section { padding: 0 20px 20px;}
	#simulation_frame02 { padding: 0 0 1px 0; margin: 0 10px 40px; background: #fff;}
	#simulation_frame02 section { padding: 0 20px 20px;}
	
	/* SelectList */
	#simulation .select-list { margin: 0 -10px 0 0; display: flex; flex-wrap: wrap;}
	#simulation .select-list li { width: calc((100% / 2) - 10px); margin: 0 10px 15px 0; text-align: center;}
	#simulation .select-list li input[type="radio"] { display: none;}
	#simulation .select-list li label { min-height: 80px; padding: 3px 0 0 0; margin: 0; border: #007487 2px solid; border-radius: 10px; font-size: 16px; font-weight: bold; line-height: 1.4; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #fff; cursor: pointer; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(0,0,0,0.15); box-sizing: border-box; position: relative;}
	#simulation #simulation_check1 .select-list li label { height: 100%;}
	#simulation .select-list li label .small { font-size: 0.7em;}
	#simulation .select-list li label img { max-width: 100% !important;}
	#simulation .select-list li label:hover { background: #007487; color: #fff; opacity: 0.7;}
	#simulation .select-list li label img        { transition: 0.3s;}
	#simulation .select-list li label:hover img  { opacity: 0.7;}
	#simulation .select-list li label:hover span { color: #fff;}
	#simulation .select-list li input:checked + label { background: #007487; color: #fff; box-shadow: none;}
	#simulation .select-list li input:checked + label:hover { opacity: 1;}
	#simulation .select-list li input:checked + label * { color: #fff;}
	#simulation .select-list li .alphabet { font-size: 30px; line-height: 1.2; display: block;}
	#simulation .select-list li .kana   { font-size: 14px; display: block;}
	#simulation .select-list li .line01 { font-size: 16px; display: block;}
	#simulation .select-list li .line02 { font-size: 16px; display: block;}
	#simulation .select-list li[class$='set3'],
	#simulation .select-list li[class$='set4'],
	#simulation .select-list li[class$='set5'] { padding-top: 20px; position: relative;}
	#simulation .select-list li[class$='set3'] label,
	#simulation .select-list li[class$='set4'] label,
	#simulation .select-list li[class$='set5'] label { padding: 20px 0 10px; background: #fff !important; opacity: 1.0 !important;}
	#simulation .select-list li[class$='set3'] label::before,
	#simulation .select-list li[class$='set4'] label::before,
	#simulation .select-list li[class$='set5'] label::before { content: ''; width: 80%; padding: 5px; border-radius: 30px; text-align: center; background: #a4d8dd; font-size: 16px; font-weight: bold; color: #007487; display: block; position: absolute; top: -15px; left: calc(10% - 5px); z-index: 10;}
	#simulation .select-list li[class$='set3'] label::before { content: '３点セット';}
	#simulation .select-list li[class$='set4'] label::before { content: '４点セット';}
	#simulation .select-list li[class$='set5'] label::before { content: '５点セット';}
	#simulation .select-list li[class$='set3'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li[class$='set4'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li[class$='set5'] input:checked + label::before { color: #fff; background: #007487;}
	#simulation .select-list li:has(.down_content) { width: 100%; border: 3px solid #c6ecef; border-radius: 10px; padding: 22px 20px;position: relative;}
	#simulation .select-list li:has(.down_content)::after{content: "";display: inline-block;width: 90px;height: 90px;border-radius: 300px;background: no-repeat center / contain #f09082;position: absolute;left: -16px;top: -12px;}
	#simulation .select-list li.down_duck::after {background-image: url(/cms/simulation/l/maru01.png);}
	#simulation .select-list li.down_goose::after {background-image: url(/cms/simulation/l/maru02.png);}
	#simulation .down_content { margin-bottom: 20px;}
	#simulation .down_content_img { width: 100%; margin-bottom: 16px;}
	#simulation .down_content_img img {width: 100%;}
	#simulation .down_content_img:not(:has(*)) { aspect-ratio: 2; background: gray;}
	#simulation .down_content_name {font-size: 15px; font-weight: bold; margin-bottom: 12px;}
	#simulation .down_content_text { text-align: left; font-size: 15px;}
	#simulation .down_content_note {text-align: left; font-size: 14px; margin-top: 14px;}
	#simulation .select-list li:has(.down_content) label { width: calc(100% - 60px); min-height: 60px; margin-inline: auto;}
	
	/* detail */
	#simulation .detail_content_inner { margin-top: 16px; display: flex !important; flex-flow: column wrap; align-content: center; justify-content: center; align-items: center; gap: 12px; }
	#simulation .detail_content_title { width: 100%; font-size: 12px; font-weight: 700; text-indent: -1em; padding-left: 1em; }
	#simulation .detail_content_img { width: min(100%, 215px); margin-inline: auto; }
	#simulation .detail_content_img img { width: 100%; }
	#simulation .detail_content_textwrap { display: flex; flex-flow: column wrap; gap: 4px; align-items: center; }
	#simulation .detail_content_text { font-size: 15px; font-weight: 400; }
	#simulation .forgore .detail_content_text { text-align: center; }
	#simulation .detail_content_limk a { font-size: 15px; font-weight: 400; text-decoration: underline; }
	
	/* PopUp */
	#simulation .remake-pop-btn { margin: 15px 0 0 0; text-align: right; line-height: 1.0;}
	#simulation .remake_pop_switch { display: block; position: relative; width: fit-content; margin: 0 0 0 auto;}
	#simulation .remake_pop_switch span { font-size: 16px; color: #ea5550; text-decoration: underline; display: inline-block; cursor: pointer;}
	#simulation .remake_pop_switch::before { content: ''; width: 16px; height: 16px; border-radius: 20px; background: #ea5550; position: absolute; top: 3px; left: -24px;}
	#simulation .remake_pop_switch span::before { content: ''; width: 8px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 2px); left: -20px;}
	#simulation .remake_pop_switch span::after  { content: ''; width: 8px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 2px); left: -20px; transform: rotate(90deg);}
	.ReMakePop-Wrapper .ReMakePop-Frame { width: 90vw; height: 70vh; z-index: 9999; position: fixed; top: 15vh; left: 5vw; background: #fff; box-sizing: border-box;}
	.ReMakePop-Wrapper .ReMakePop-Inner { width: 100%; height: 70vh; padding: 35px 15px; overflow-y: scroll; box-sizing: border-box;}
	.ReMakePop-Wrapper h2 { padding: 16px 10px; margin: 0 0 20px; border-radius: 60px; font-size: 16px; line-height: 1.0; text-align: center; background: #d5edef; color: #007487;}
	.ReMakePop-Wrapper .ReMakePop-List li { margin: 0 0 40px 0;}
	.ReMakePop-Wrapper .ReMakePop-List li .name  { padding: 0 0 10px 0; margin: 0 0 15px; border-bottom: #007487 2px solid; font-size: 18px; text-align: center; color: #007487;}
	.ReMakePop-Wrapper .ReMakePop-List li .image { margin: 0 0 10px; text-align: center;}
	.ReMakePop-Wrapper .ReMakePop-List li .image img { max-width: 100% !important; width: 100%;}
	.ReMakePop-Wrapper .ReMakePop-List li .text  { font-size: 16px; line-height: 1.8;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame { margin: 10px 0 0 0;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame .ttl  { padding: 5px 0; margin: 5px 0 0 0; box-sizing: border-box; font-size: 14px; font-weight: bold;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl    { border: #ddd 1px solid; font-size: 14px; display: flex; justify-content: space-between;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl + dl { border-top: none;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl dt { width: 30%; padding: 5px 10px; font-size: 14px; box-sizing: border-box; background: #eee;}
	.ReMakePop-Wrapper .ReMakePop-List li .box-frame dl dd { width: 70%; padding: 5px 10px; font-size: 14px; box-sizing: border-box;}
	.ReMakePop-Wrapper .ReMakePop-Item .image { margin: 0 0 10px; text-align: center;}
	.ReMakePop-Wrapper .ReMakePop-Item .image img { width: 70%; margin: 0 auto;}
	.ReMakePop-Wrapper .ReMakePop-Item .text  { margin: 0 0 20px; font-size: 16px; text-align: center; line-height: 1.8;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top { width: 40px; height: 40px; padding: 0; margin: 0; border-radius: 40px; font-size: 0; background: #007487; cursor: pointer; position: absolute; top: -30px; right: -10px;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top span { color: #fff; font-size: 0;}
	.ReMakePop-Wrapper .ReMakePop-Close.Top::before { content: ''; width: 26px; height: 2px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 7px; transform: rotate(-45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.Top::after  { content: ''; width: 26px; height: 2px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 7px; transform: rotate(45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom { width: 100px; height: 50px; padding: 0 0 0 15px; margin: 0 auto; border-radius: 10px; font-size: 16px; font-weight: bold; text-align: center; line-height: 50px; background: #007487; cursor: pointer; position: relative;}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom span { color: #fff;}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom::before { content: ''; width: 14px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(-45deg);}
	.ReMakePop-Wrapper .ReMakePop-Close.bottom::after  { content: ''; width: 14px; height: 1px; display: block; background: #fff; position: absolute; top: calc(50% - 1px); left: 15px; transform: rotate(45deg);}
	
	/* Result */
	#simulation_result_inner { padding: 0 0 30px 0; margin: 80px 10px 40px; background: #fff;}
	#simulation_result h2::after { content: ''; width: 31px; height: 28px; padding: 0; margin: 0; background: url("kirakira.png") left top no-repeat; -webki-background-size: 31px 28px; background-size: 31px 28px; display: block; position: absolute; right: 20px; top: 7px;}
	#simulation_result h2::before { content: ''; border-left: transparent 40px solid; border-right: transparent 40px solid; border-top: #83ccd2 25px solid; display: block; position: absolute; left: calc(50% - 40px); top: -50px;}
	#simulation_result #result_answer { font-size: 30px; font-weight: normal; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; text-align: center; letter-spacing: 0.05em; color: #ea5550;}
	#simulation_result #result_answer .price-num { font-size: 30px; font-weight: bold; color: #ea5550;}
	#simulation_result #result_answer .yen  { font-size: 16px; font-weight: normal; color: #ea5550;}
	#simulation_result #result_answer .over { font-size: 28px; font-weight: normal; color: #ea5550;}
	#simulation_result .reform-link { margin: 20px 15px 0; text-align: right;}
	#simulation_result .reform-link a { font-size: 16px; color: #ea5550; text-decoration: underline; display: inline-block; cursor: pointer;}
	#simulation_result #result_comment { padding: 10px 0; margin: 15px 15px 0; border-top: #d8efef 2px solid; border-bottom: #d8efef 2px solid; font-size: 14px; font-weight: normal;}
	#simulation_result #reset_start { margin: 0 30px 10px; text-align: center;}
	#simulation_result #reset_start span { min-height: 80px; padding: 0; margin: 0; border-radius: 10px; font-size: 16px; font-weight: bold; text-indent: -9999px; line-height: 1.4; color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #007487 url("once_more_sp.png") center center no-repeat; cursor: pointer; -webkit-background-size: auto 16px; background-size: auto 16px; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(12,64,78,1); position: relative;}
	#simulation_result #reset_start span:hover { opacity: 0.7;}
	#simulation_result .remake-pop-btn { margin-right: 20px;}
	#simulation_result .for-ja-members { padding: 40px 20px; background: #fff; position: relative; bottom: -60px;}
	#simulation_result .for-ja-members p { font-size: 18px; font-weight: bold; text-align: center;}
	
	/* OtherResult */
	#simulation #other_buttons .contact-link { margin: 0 30px 20px;}
	#simulation #other_buttons .contact-link a { min-height: 80px; padding: 0; margin: 0; border-radius: 10px; line-height: 1.4; text-decoration: none; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #f08d7e  url("select_order_sp.png") center center no-repeat; -webkit-background-size: auto 30px; background-size: auto 30px; font-size: 0; text-indent: -9999px; color: #fff; cursor: pointer; transition: 0.3s; box-shadow: 0 6px 6px -3px rgba(165,86,74,1); position: relative;}
	#simulation #other_buttons .contact-link a:hover { opacity: 0.7;}
	
	/* Contact */
	#simulation .bottom-info  { padding: 40px 0 60px; background: #5bc0c7 url(/cms/simulation/bg2.jpg) center top repeat-y; box-sizing: border-box; -webkit-background-size: auto 100%; background-size: auto 100%;}
	#simulation .bottom-info-inner  { padding: 30px 20px; margin: 0 10px; background: #fff;}
	#simulation .bottom-info .title { margin: 0 0 20px; text-align: center; font-size: 20px; font-weight: bold; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; letter-spacing: 0.1em; color: #fff;}
	#simulation .bottom-info .title span { text-align: center; font-size: 26px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; color: #fff;}
	#simulation .bottom-info .message { margin: 0 0 20px 0; text-align: center; color: #ea5550;}
	#simulation .bottom-info .message span { font-size: 16px; display: inline-block; position: relative; color: #ea5550;}
	#simulation .bottom-info .message span::before,
	#simulation .bottom-info .message span::after  { content: ''; width: 1px; height: 24px; background: #ea5550; display: block; position: absolute; bottom: 0;}
	#simulation .bottom-info .message span::before { left:  -16px; transform: rotate(-45deg);}
	#simulation .bottom-info .message span::after  { right: -10px; transform: rotate(45deg);}
	#simulation .bottom-info .contact-list li + li  { margin: 20px 0 0 0;}
	#simulation .bottom-info .contact-list li .ttl  { padding: 10px; margin: 0 0 20px; font-size: 18px; text-align: center; color: #007487; background: #e2f2f3;}
	#simulation .bottom-info .contact-list li .num  { margin: 0 auto 20px; text-align: center;}
	#simulation .bottom-info .contact-list li img   { width: 348px; max-width: 100%; vertical-align: top;}
	#simulation .bottom-info .contact-list li .time { font-size: 16px; color: #007487; text-align: center;}
	#simulation .bottom-info .contact-list li .btn  { margin: 0 24px; font-size: 16px; color: #007487; text-align: center;}
	#simulation .bottom-info .contact-list li .btn a{ height: 48px; padding: 0 0 0 10px; border-bottom: #00414c 2px solid; border-radius: 10px; font-size: 16px; font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; text-align: center; text-decoration: none; line-height: 46px; display: block; background: #007487 url("ico_mail.png") 15px center no-repeat; -webkit-background-size: 24px auto; background-size: 24px auto; color: #fff; position: relative; box-sizing: border-box;}
	#simulation .bottom-info .contact-list li .btn a::after { content: ''; width: 8px; height: 8px; border-top: 2px solid #fff; border-right: 2px solid #fff; -webkit-transform: rotate(135deg); transform: rotate(45deg); position: absolute; right: 15px; top: calc(50% - 4px);}
}
