@charset "UTF-8";

/*---------------------------------
point
-----------------------------------*/
.area_column { display: flex; padding: 20px; justify-content: center; margin: 20px auto 32px; margin-bottom: 16px; padding: 8px 16px 16px; box-sizing: border-box; }
.area_point ul._point { display: flex; justify-content: center; margin: 56px 0 16px; }
.area_point ul._point li { position: relative; width: 44%; padding: 32px 16px 16px; background: #fff7fa; box-sizing: border-box; text-align: center; color: #D45060; margin: 0 8px !important; }
.area_point ul._point li::after { content: ""; position: absolute; top: 4px; left: 4px; width: 0; height: 0; border-style: solid; border-width: 20px 40px 0 0; border-color: #D45060 transparent transparent transparent; transition: 0.2s; }
.area_point ul._point li span._number { font-size: 32px; position: relative; }
.area_point ul._point li h3.point_title { font-size: 20px; text-align: center; margin-bottom: 16px; color: #D45060; font-weight: bold; }
.area_point ul._point li p.point_lead { font-size: 16px; line-height: 1.5; margin: 0; }
.area_point .box_arrow ._catch { position: relative; top: 27%; font-weight: 600; }
.area_point .box_arrow { position: absolute; width: 90px; height: 90px; background: #D45060; padding: 0px; text-align: center; color: #FFFFFF; font-size: 14px; font-weight: bold; border-radius: 50px; -webkit-border-radius: 50px; -moz-border-radius: 50px; top: -20px; right: 0; box-sizing: border-box; }
.area_point .box_arrow:after { border: solid transparent; content: ''; height: 0; width: 0; pointer-events: none; position: absolute; border-top-width: 15px; border-bottom-width: 15px; border-left-width: 9px; border-right-width: 8px; margin-left: -10px; border-top-color: #D45060; top: 83%; left: 12%; transform: rotate(45deg); }
.wrap_intro { border: 1px solid #ebc1c7; position: relative; margin: 48px 8px; padding: 0 16px 16px; }
#charm h3.heading_single { margin: 32px 0 24px; font-size: 21px; position: absolute; top: -46px; left: 50%; transform: translateX(-50%); background: #fff; width: 30%; }
#charm .area_point .left_txt p { margin: 0 0em 1em 1em; }
#charm .area_point .left_txt p:last-child { margin-bottom: 0; }
h4.words { padding: 2px; border-bottom: 1px solid; margin-left: 1em; margin-bottom: 1em; font-size: 18px; color: #D45060; font-weight: bold; }
.area_point_icon span.point { background: #fff7fa; }

.navi_local_box { width: 18%; }

/*---------------------------------
size guide
-----------------------------------*/
.size_guide_section { max-width: 920px; margin: 0 auto 24px; padding: 0 15px; box-sizing: border-box; font-family: "Noto Sans JP", sans-serif; background-color: #faf8f5; border-radius: 8px; padding: 35px 25px; }
.sg_header { text-align: center; margin-bottom: 24px; }
.sg_title { color: #3E4F70; font-size: 20px; font-weight: 600; letter-spacing: 0.05em; margin: 0 0 6px 0; font-family: "Noto Serif JP", serif; text-align: center; }
.sg_notice { font-size: 13px; color: #777777; margin: 0; text-align: center; }
.sg_container { display: flex; gap: 20px; justify-content: center; }
.sg_card { flex: 1; max-width: 280px; background-color: #ffffff; border: 1px solid #ede7de; border-radius: 8px; padding: 18px 14px; box-sizing: border-box; text-align: center; display: flex; flex-direction: column; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.sg_card:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06); }
.sg_badge { background-color: #3E4F70; color: #ffffff; font-size: 15px; font-weight: bold; padding: 4px 12px; letter-spacing: 0.05em; margin-bottom: 8px; text-align: center; }
.sg_place { font-size: 12px; color: #3E4F70; background: #fdf5f5; border-radius: 4px; padding: 3px 6px; margin-bottom: 12px; font-weight: 500; text-align: center; }
.sg_img { height: 180px; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.sg_img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.sg_spec { margin: 0; padding-top: 12px; border-top: 1px dashed #e2ded7; text-align: left; }
.sg_spec dt { font-size: 12px; font-weight: bold; color: #555555; margin-top: 6px; }
.sg_spec dt:first-child { margin-top: 0; }
.sg_spec dd { font-size: 13.5px; color: #222222; margin: 2px 0 0 0; font-weight: 500; }
.sg_scroll_btn { display: block; margin-top: 16px; padding: 10px 15px; background-color: #ffffff; border: 1px solid #3E4F70; color: #3E4F70; font-size: 13px; font-weight: bold; text-align: center; text-decoration: none; border-radius: 20px; transition: all 0.2s ease; }
.sg_scroll_btn:hover { background-color: #3E4F70; color: #ffffff; text-decoration: none; }