@charset "UTF-8";
* { margin: 0; padding: 0; box-sizing: border-box; }

a:hover { text-decoration: none; }

body#summer_cp { font-family: 'Noto Sans JP', sans-serif; }

img { width: 100%; height: auto; vertical-align: bottom; }

.sp_obj { display: none; }
@media only screen and (max-width: 992px) { .sp_obj { display: block; } }

.pc_obj { display: block; }
@media only screen and (max-width: 992px) { .pc_obj { display: none; } }

.sp_br { display: none; }
@media only screen and (max-width: 992px) { .sp_br { display: inline-block; } }

.pc_br { display: inline-block; }
@media only screen and (max-width: 992px) { .pc_br { display: none; } }

.scroll-hint-icon { transform: scale(79%); }

/*============================
トマト夏の定期預金キャンペーン
============================*/
#summer_cp { /*============================
キャンペーン概要
============================*/ }
#summer_cp .header_box_logo { width: 255px; height: auto; margin: 0 auto; padding: 22px 0 26px; display: flex; flex-direction: column; align-items: center; }
@media only screen and (max-width: 992px) { #summer_cp .header_box_logo { width: calc((148 / 320) * 100 * 1vw); padding: calc((10 / 320) * 100 * 1vw) 0 calc((12 / 320) * 100 * 1vw); } }
#summer_cp .header_box_logo .cls-logo a { display: block; height: 38px; }
@media only screen and (max-width: 992px) { #summer_cp .header_box_logo .cls-logo a { height: calc((28 / 320) * 100 * 1vw); } }
#summer_cp .header_box_logo .bank_code { text-align: center; font-size: 12px; line-height: 1em; margin-top: 5px; }
@media only screen and (max-width: 992px) { #summer_cp .header_box_logo .bank_code { font-size: calc((8.5 / 320) * 100 * 1vw); margin-top: calc((3 / 320) * 100 * 1vw); } }
#summer_cp .cp_head { background-image: url("../img/cp_head_bk.png"); background-repeat: repeat-x; background-size: contain; max-height: 890px; height: calc((890 / 1400) * 100 * 1vw); width: 100%; border-top: #d3d4d4 solid 1px; overflow: hidden; position: relative; }
@media only screen and (max-width: 992px) { #summer_cp .cp_head { background: none; } }
@media only screen and (max-width: 992px) { #summer_cp .cp_head { max-height: none; height: calc((724 / 375) * 100 * 1vw); } }
#summer_cp .cp_head .cp_head_wrap { position: relative; max-height: 890px; height: calc((890 / 1400) * 100 * 1vw); max-width: 1400px; margin: 0 auto; }
@media only screen and (max-width: 992px) { #summer_cp .cp_head .cp_head_wrap { max-height: none; height: calc((724 / 375) * 100 * 1vw); } }
#summer_cp section h3 { display: flex; justify-content: center; align-items: center; height: 127px; background-color: #9D6DAB; font-size: 30px; line-height: 1; font-weight: 700; color: #FFF; position: relative; }
@media only screen and (max-width: 992px) { #summer_cp section h3 { font-size: calc((20 / 375) * 100 * 1vw); background-size: auto calc((69 / 375) * 100 * 1vw); height: calc((70 / 375) * 100 * 1vw); } }
#summer_cp section h3::before { content: ""; display: block; width: 130px; height: 139px; background-image: url("../img/h3_bk_l.svg"); background-repeat: no-repeat; background-size: contain; position: absolute; top: 0; left: 50%; transform: translateX(-516px); }
@media only screen and (max-width: 992px) { #summer_cp section h3::before { width: calc((50 / 375) * 100 * 1vw); height: calc((53.4 / 375) * 100 * 1vw); top: calc((3 / 375) * 100 * 1vw); transform: translateX(calc((-168 / 375) * 100 * 1vw)); } }
#summer_cp section h3::after { content: ""; display: block; width: 168px; height: 145px; background-image: url("../img/h3_bk_r.svg"); background-repeat: no-repeat; background-size: contain; position: absolute; top: 0; right: 50%; transform: translateX(554px); }
@media only screen and (max-width: 992px) { #summer_cp section h3::after { background-image: url("../img/h3_bk_r2.svg"); width: calc((44 / 375) * 100 * 1vw); height: calc((37 / 375) * 100 * 1vw); top: calc((19 / 375) * 100 * 1vw); transform: translateX(calc((168 / 375) * 100 * 1vw)); } }
#summer_cp section .contents .inner_contents p { font-size: 16px; font-weight: 400; line-height: 28px; width: calc((850 / 890) * 100 * 1%); margin: 0 auto; }
@media only screen and (max-width: 992px) { #summer_cp section .contents .inner_contents p { font-size: calc((14 / 375) * 100 * 1vw); line-height: 1.75; width: 100%; } }
#summer_cp section .contents .inner_contents ul li { font-size: 16px; font-weight: 400; line-height: 28px; list-style-position: inside; padding-left: 1em; text-indent: -1em; }
@media only screen and (max-width: 992px) { #summer_cp section .contents .inner_contents ul li { font-size: calc((14 / 375) * 100 * 1vw); line-height: 1.75; } }
#summer_cp section .contents .inner_contents .important_items { color: #e90000; background-color: #fff1ed; padding: 21px 33px 28px; margin-top: 23px; }
@media only screen and (max-width: 992px) { #summer_cp section .contents .inner_contents .important_items { padding: calc((14 / 375) * 100 * 1vw) calc((17 / 375) * 100 * 1vw) calc((17 / 375) * 100 * 1vw); margin-top: calc((24 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview { padding-bottom: 114px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview { padding-bottom: calc((60 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview h3 { margin-bottom: 90px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview h3 { margin-bottom: calc((36 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents { max-width: 1000px; margin: 0 auto; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents { max-width: inherit; width: calc((320 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl { display: flex; align-items: center; /*預入金額*/ /*預入方法*/ }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl { display: block; } }
#summer_cp #campaign_overview .contents .inner_contents dl dt { border-top: #9D6DAB solid 3px; flex: 0 0 267px; font-size: 18px; line-height: 1; font-weight: 700; letter-spacing: 0.08em; color: #9D6DAB; align-self: stretch; min-height: 100px; display: flex; justify-content: center; align-items: center; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl dt { border-top: #9D6DAB solid calc((2 / 375) * 100 * 1vw); font-size: calc((16 / 375) * 100 * 1vw); min-height: inherit; padding: calc((13 / 375) * 100 * 1vw) 0; } }
#summer_cp #campaign_overview .contents .inner_contents dl dd { border-top: #9D6DAB solid 1px; flex: 1 1 733px; min-height: 98px; display: flex; align-items: center; font-size: 18px; font-weight: 400; padding-left: 38px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl dd { min-height: calc((53 / 375) * 100 * 1vw); font-size: calc((15 / 375) * 100 * 1vw); padding-left: 0; justify-content: center; } }
#summer_cp #campaign_overview .contents .inner_contents dl dd span:not(.tume) { font-size: 16px; letter-spacing: 0.04em; }
#summer_cp #campaign_overview .contents .inner_contents dl dd span:not(.tume).kakomi { display: inline-block; border: #333 solid 1px; padding: 0 0.3em; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl dd span:not(.tume) { font-size: calc((13 / 375) * 100 * 1vw); letter-spacing: 0.05em; line-height: calc((21 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl dd ul { margin: 30px 0; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl dd ul { margin: calc((12 / 375) * 100 * 1vw) 0 calc((44 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl dd ul li { font-size: 16px; line-height: 28px; letter-spacing: 0.04em; list-style-position: inside; padding-left: 1em; text-indent: -1em; }
#summer_cp #campaign_overview .contents .inner_contents dl dd ul li .unl { text-decoration: underline; color: #e90000; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl dd ul li { font-size: calc((14 / 375) * 100 * 1vw); line-height: 1.75; letter-spacing: 0; } }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl:nth-last-of-type(1) { border-bottom: #9D6DAB solid calc((2 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl:nth-last-of-type(1) dt { border-bottom: #9D6DAB solid 3px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl:nth-last-of-type(1) dt { border-bottom: none; } }
#summer_cp #campaign_overview .contents .inner_contents dl:nth-last-of-type(1) dd { border-bottom: #9D6DAB solid 1px; margin: 1px 0; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl:nth-last-of-type(1) dd { margin: 0; border-bottom: none; } }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl:nth-of-type(3) dd { padding: calc((14 / 375) * 100 * 1vw) 0 calc((22 / 375) * 100 * 1vw); line-height: calc((21 / 375) * 100 * 1vw); } }
@media (-ms-high-contrast: none), (-ms-high-contrast: active) { #summer_cp #campaign_overview .contents .inner_contents dl:not(:nth-last-of-type(1)) dd { height: 98px; } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd { margin-top: 1px; flex-direction: column; align-items: flex-start; padding-top: 30px; padding-bottom: 30px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd { padding-top: calc((20 / 375) * 100 * 1vw); padding-bottom: calc((20 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene h5 { background-color: #F5E6FA; font-weight: 400; font-size: 18px; letter-spacing: 0.04em; display: flex; justify-content: center; align-items: center; flex: 0 0 108px; width: fit-content; padding: 0 1em; }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene h5 span { font-size: 15px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene h5 { font-size: calc((13.5 / 375) * 100 * 1vw); display: inline-flex; flex-direction: column; align-items: flex-start; margin-bottom: calc((12 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene div { flex: 0 0 calc(100% - 104px); }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene p { font-feature-settings: "palt"; width: auto; font-size: 18px; line-height: 31px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene p { font-size: calc((15 / 375) * 100 * 1vw); line-height: calc((27 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene p span { font-size: 0.8em; font-weight: normal; }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene + .wrap_scene { margin-top: 21px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene + .wrap_scene { margin-top: calc((22 / 375) * 100 * 1vw); } }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_amount dd .wrap_scene + .wrap_scene p span.tume { font-feature-settings: "palt"; font-size: calc((15 / 375) * 100 * 1vw); line-height: calc((27 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd { margin-top: 1px; flex-direction: column; align-items: flex-start; padding-top: 30px; padding-bottom: 30px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd { padding-top: calc((20 / 375) * 100 * 1vw); padding-bottom: calc((20 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd div > p { font-size: 18px; line-height: 1; width: auto; margin-bottom: 17px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd div > p { font-size: calc((15 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene { display: flex; align-items: center; }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene h5 { background-color: #F5E6FA; font-weight: 400; font-size: 18px; letter-spacing: 0.04em; margin-right: 9px; display: flex; justify-content: center; align-items: center; width: 108px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene h5 { font-size: calc((13.5 / 375) * 100 * 1vw); display: inline-flex; width: calc((83 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene p { font-feature-settings: "palt"; width: auto; font-size: 18px; line-height: 31px; margin: 0; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene p { font-size: calc((15 / 375) * 100 * 1vw); line-height: calc((27 / 375) * 100 * 1vw); } }
#summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene + .wrap_scene { margin-top: 14px; }
@media only screen and (max-width: 992px) { #summer_cp #campaign_overview .contents .inner_contents dl.deposit_method dd .wrap_scene + .wrap_scene { margin-top: calc((11 / 375) * 100 * 1vw); } }
#summer_cp .support { background-color: #F5E6FA; text-align: center; padding: 58px 0 50px; }
@media only screen and (max-width: 992px) { #summer_cp .support { padding: calc((38 / 375) * 100 * 1vw) 0 calc((29 / 375) * 100 * 1vw); } }
#summer_cp .support p { font-size: 15px; line-height: 1; font-weight: 400; letter-spacing: 0.05em; margin-bottom: 29px; }
@media only screen and (max-width: 992px) { #summer_cp .support p { font-size: calc((12 / 375) * 100 * 1vw); line-height: 1.75; margin-bottom: calc((15 / 375) * 100 * 1vw); } }
#summer_cp .support .support_center { font-size: 22px; font-weight: 700; letter-spacing: 0; margin-bottom: 14px; }
@media only screen and (max-width: 992px) { #summer_cp .support .support_center { font-size: calc((14 / 375) * 100 * 1vw); margin-bottom: calc((10 / 375) * 100 * 1vw); } }
#summer_cp .support a { font-size: 45px; font-weight: 700; letter-spacing: 0.095em; margin-bottom: 19px; line-height: 1; display: inline-flex; color: #000; }
@media only screen and (max-width: 992px) { #summer_cp .support a { font-size: calc((28.8 / 375) * 100 * 1vw); margin-bottom: calc((15 / 375) * 100 * 1vw); } }
#summer_cp .support a::before { content: ""; width: 85px; height: 51px; background: url(../../../common/images/free_call_mark.png) no-repeat center center/contain; display: inline-block; }
@media only screen and (max-width: 992px) { #summer_cp .support a::before { width: calc((55 / 375) * 100 * 1vw); height: calc((33 / 375) * 100 * 1vw); } }
#summer_cp .support .support_time { font-size: 14px; font-weight: 500; letter-spacing: 0.05em; margin-bottom: 0; color: #333; }
@media only screen and (max-width: 992px) { #summer_cp .support .support_time { font-size: calc((11 / 375) * 100 * 1vw); line-height: calc((17 / 375) * 100 * 1vw); } }
#summer_cp .scroll_top { background-color: #E75297; display: flex; justify-content: center; align-content: center; align-items: center; position: fixed; right: 108px; bottom: 83px; width: 50px; height: 50px; border-radius: 50%; cursor: pointer; }
@media only screen and (max-width: 992px) { #summer_cp .scroll_top { right: calc((15 / 375) * 100 * 1vw); bottom: calc((45 / 375) * 100 * 1vw); width: calc((50 / 375) * 100 * 1vw); height: calc((50 / 375) * 100 * 1vw); } }
#summer_cp .scroll_top::before { content: ''; display: inline-block; border: 0; border-top: solid 2px #fff; border-right: solid 2px #fff; width: 11px; height: 11px; transform: rotate(-45deg) translateX(-1px) translateY(2px); }
#summer_cp footer { background-color: #9D6DAB; border: none; }
#summer_cp footer p { font-size: 10px; line-height: 38px; text-align: center; color: #FFF; letter-spacing: 0.1em; }
@media only screen and (max-width: 992px) { #summer_cp footer p { font-size: calc((7 / 375) * 100 * 1vw); line-height: calc((20 / 375) * 100 * 1vw); } }
