@charset "UTF-8";

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
body {
    position: relative;
    font-family: "メイリオ", Meiryo, "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, sans-serif;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-size: 16px;
    line-height: 1.3125;
    letter-spacing: 0.1em;
    color: #333;
}
img {
    max-width: 100%;
}
.red {
    color: #d80c18;
}
.bold {
    font-weight: bold;
}
.small {
    font-size: 14px;
}
a {
    color: #eb5505;
}
sup {
    top: -1em;
    font-size: 0.5em;
}
.inner {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 20px;
}
@media screen and (min-width: 769px) {
    .pchidden {
        display: none !important;
    }
}
@media screen and (max-width: 768px) {
    .sphidden {
        display: none !important;
    }
}

/*ページトップ*/
.lp101-pagetop {
    display: none;
    position: fixed;
    z-index: 1000;
    right: 15px;
    bottom: 15px;
    width: 45px;
    height: 45px;
}
@media screen and (min-width: 769px) {
    .lp101-pagetop {
        bottom: 30px;
        right: 30px;
    }
}

/*ヘッダー*/
header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 100;
    background: #fff;
    padding: 15px 0;
}
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
}
.header_logo,
.header_logo img {
    height: 32px;
}
.header_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    color: #fff;
    background: #d80c18;
    box-shadow: 0 -3px 1px #aa060c inset;
    text-decoration: none;
    font-weight: bold;
    font-size: 16px;
    height: 42px;
    width: 178px;
    border-radius: 21px;
}
.header_btn img {
    height: 14px;
    margin-top: -3px;
}
.header_btn:hover {
    margin-top: 2px;
    padding-top: 2px;
    height: 40px;
    border-radius: 20px;
    box-shadow: 0 -1px 1px #aa060c inset;
}
main {
    padding-top: 72px;
}
@media screen and (min-width: 769px) {
    main {
        overflow-x: hidden;
    }
}
@media screen and (min-width: 576px) {
    header {
        padding: 20px 0;
    }
    .header_logo,
    .header_logo img {
        height: 45px;
    }
    .header_btn {
        gap: 10px;
        box-shadow: 0 -4px 1px #aa060c inset;
        font-size: 18px;
        height: 45px;
        width: 228px;
        border-radius: 22.5px;
    }
    .header_btn img {
        height: 16px;
        margin-top: -2px;
    }
    .header_btn:hover {
        margin-top: 4px;
        padding-top: 2px;
        height: 41px;
        border-radius: 21.5px;
        box-shadow: 0 -2px 1px #aa060c inset;
    }
    main {
        padding-top: 85px;
    }
}

/*KV*/
.kv {
    line-height: 0;
    background: #f8f3ef;
}
.kv-pc {
    min-width: 1920px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (min-width: 1001px) {
    .kv {
        background-image: url(../img/kv-background.png);
        background-repeat: repeat-x;
        background-position: center bottom;
    }
}
@media screen and (max-width: 1000px) {
    .kv-pc {
        display: none;
    }
}
@media screen and (min-width: 1001px) {
    .kv-tab {
        display: none;
    }
}
@media screen and (max-width: 768px) {
    .kv-tab {
        display: none;
    }
}
@media screen and (min-width: 769px) {
    .kv-sp {
        display: none;
    }
}

.kv-btn {
    position: relative;
    text-align: center;
    padding: 35px 0;
}
/* .kv-btn:after {
    position: absolute;
    content: "";
    border-top: 30px solid #fff;
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
} */
.kv-btn__title {
    display: block;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #d80c16;
    text-align: center;
}
.kv_btn {
    position: relative;
    margin: 0 auto;
    display: flex;
    align-items: center;
    color: #fff;
    background: #d80c18;
    box-shadow: 0 -4px 1px #aa060c inset;
    text-decoration: none;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 18px;
    height: 45px;
    width: 335px;
    border-radius: 22.5px;
    margin-top: 12px;
    padding-left: 50px;
}
@media screen and (max-width: 768px) {
	main .kv_btn {
		width: 100%;
		max-width: 335px;
	}
}
.kv_btn span {
    font-size: 16px;
    letter-spacing: 0.05em;
    margin-right: 5px;
}
.kv_btn img {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    margin-top: -2px;
    width: 12px;
}
@media screen and (max-width: 768px) {

}
.kv_btn:hover {
    /* top: 2px;
    border-radius: 22.5px; */
    margin-top: 16px;
    height: 41px;
    box-shadow: 0 -2px 1px #aa060c inset;
}
.kv__box-wrapper{
    background: #fff2e7;
    padding-top: 8px;
}
.kv__box {
    width: fit-content;
    margin-inline: auto;
}
.kv__box span {
    display: block;
    font-size: 6.5px;
    line-height: 1.3;
    letter-spacing: 0.01em;
}
@media screen and (min-width: 769px) {
    .kv_btn {
        font-size: 26px;
        height: 60px;
        width: 462px;
        border-radius: 30px;
        padding-left: 57px;
    }
    .kv_btn:hover {
        /* top: 4px; */
        margin-top: 16px;
        height: 56px;
        border-radius: 30px;
    }
    .kv-btn__title {
        font-size: 22px;
    }
    .kv_btn span {
        font-size: 22px;
        letter-spacing: 0.05em;
        margin-right: 5px;
        padding-top: 5px;
    }
    .kv_btn img {
        right: 65px;
        width: 16px;
    }
    .kv__box-wrapper{
        padding-top: 10px;
    }
    .kv__box span {
        font-size: 11px;
        letter-spacing: 0;
    }
}


@media screen and (min-width: 769px) and (max-width: 1000px) {
    .kv {
        overflow-x: hidden;
    }
	.kv-tab {
        display: block;
        min-width: 1400px;
        position: relative;
        left: 50%;
        transform: translateX(-50%);  
	}
}

/* example */
.example {
    position: relative;
    background-color: #f8f3ef;
    padding-top: 40px;
    padding-bottom: 50px;
}
.example::after {
    position: absolute;
    content: "";
    border-top: 30px solid #f8f3ef;
    border-left: 50vw solid transparent;
    border-right: 50vw solid transparent;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
.example .inner {
    max-width: 840px;
}
.example__box {
    padding: 0 20px 25px 20px;
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 0 9px rgba(0, 0, 0, 0.25);
}
.example__box + .example__box {
    margin-top: 40px;
}
.example__title {
    position: relative;
    background-color: #9d9e9e;
    font-size: 18px;
    font-weight: 500;
    color: #ffffff;
    border-radius: 5px;
    text-align: center;
    margin: -10px auto 0;
    width: 100%;
    max-width: 270px;
    height: 60px;
    top: -15px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}
.example__title::after {
    content: "";
    position: absolute;
    background-image: url(../img/triangle_gray.png);
    width: 27px;
    height: 31px;
    top: 83%;
    right: 27%;
    z-index: 1;
}
.example__content {
    display: flex;
    flex-direction: column;
    gap: 12px 0;
}
.example__image {
    max-width: 100%;
    margin: 20px auto 0;
}
.example__image.example__image2 {
    margin: -12px auto 0;
}
.example__image img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.example__image.example__image1 {
    width: 108px;
}
.example__image.example__image2 img {
    width: clamp(11rem, 0.211rem + 44.26vw, 21.125rem);
}
.example__text {
    margin: 0;
}
.example__inner {
    margin-top: 20px;
    display: none;
}
.example__inner-image {
    width: 100%;
    max-width: 414px;
    margin: 0 auto;
}
.example__inner-text {
    margin: 20px 0 0;
}
.example-btn {
    position: relative;
    display: block;
    width: 100%;
    max-width: 435px;
    padding: 10px 0;
    background-color: #eb5505;
    border-radius: 8px;
    text-align: center;
    color: #ffffff;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.3);
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    letter-spacing: 0.1em;
}
.example-btn::before,
.example-btn::after {
    content: "";
    width: 15px;
    height: 1px;
    background-color: #ffffff;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    right: 10px;
    transition: all 0.3s ease-in-out;
}
.example-btn::after {
    rotate: 90deg;
}
.example__btn {
    margin: 25px auto 0;
}
.example__btn.open {
    max-width: 190px;
    background-color: #585858;
}
.example__btn.open::after {
    rotate: 180deg;
}
.example__security-btn {
    position: relative;
    left: 10px;
    width: 80%;
    border: 3px solid #eb5505;
    background-color: #ffffff;
    margin: 30px auto 0;
    border-radius: 10px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease-in-out;
}
.example__security-btn a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 7.7px;
    text-decoration: none;
    padding: 8.5px 7.5px 8.5px 44px;
    transition: all 0.3s ease-in-out;
}
.example__security-btn a svg path {
    transition: all 0.3s ease-in-out;
}
.example__security-btn a::before {
    position: absolute;
    content: "";
    background-image: url(../img/security_icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 62px;
    height: 62px;
    top: 50%;
    translate: 0 -50%;
    left: -25px;
    z-index: 1;
}
.example__security-btn:hover {
    background-color: #f7752f;
}
.example__security-btn:hover a {
    color: #fff;
}
.example__security-btn:hover a svg path {
    fill: #fff;
}
.example__security-btn a:hover::before {
    opacity: 1;
}
.example__security-btn a span {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.09em;
}
.example__security-btn a svg {
    width: 26.5px;
}

@media screen and (min-width: 769px) {
    .example {
        position: relative;
        background-color: #f8f3ef;
        padding-top: 59px;
        padding-bottom: 6px;
    }
    .example__inner {
        padding-bottom: 25px;
    }
    .example__box {
        padding: 0 50px 35px;
    }
    .example__box + .example__box {
        margin-top: 71px;
    }
    .example__title {
        max-width: 513px;
        font-size: 24px;
    }
    .is-windows .example__title {
        padding-top: 3.5px;
    }
    .example__title::after {
        background-image: url(../img/triangle_gray2.png);
        top: 85%;
        width: 52px;
        height: 32px;
    }
    .example__content {
        margin-top: 33px;
    }
    .example__text {
        font-size: 18px;
        flex: 1;
        line-height: 1.78;
        letter-spacing: 0.05em;
    }
    .example__content {
        flex-direction: row;
        align-items: center;
        gap: 0 25px;
    }
    .example__image {
        max-width: 100%;
        margin: 0;
    }
    .example__image.example__image1 {
        width: 141px;
    }
    .example__image.example__image2 {
        width: 202px;
    }
    .example__inner-text {
        font-size: 18px;
        line-height: 1.78;
        letter-spacing: 0.07em;
    }
    .example-btn {
        font-size: 24px;
        padding: 13px 0;
    }
    .is-windows .example-btn {
        padding-top: 15px;
    }
    .example-btn::before,
    .example-btn::after {
        width: 21px;
        right: 19px;
        height: 1.5px;
    }
    .example__btn.open {
        max-width: 273px;
    }
    .example__btn.open::after {
        rotate: 180deg;
    }
    .example__security-btn {
        width: 100%;
        max-width: 745px;
        margin: 50px auto 0;
    }
    .example__security-btn a {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0 20px;
        text-decoration: none;
        padding: 26px 18px 27px 78px;
    }
    .example__security-btn a::before {
        width: 95px;
        height: 95px;
        left: -35px;
    }
    .example__security-btn a span {
        font-size: 22px;
        letter-spacing: 0.1em;
    }
    .example__security-btn a svg {
        width: 38px;
    }
}

/* accordion */
.example__accordion {
    margin-top: 16px;
    border-radius: 8px;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
}
.accordion__btn {
    max-width: 100%;
}
.accordion__btn.open {
    border-radius: 8px 8px 0 0;
}
.example-btn.open::after {
    rotate: 180deg;
}
.accordion__wrap {
    display: none;
    padding: 20px 18px 24px;
}
.accordion__box:not(:first-of-type) {
    margin-top: 18px;
}
.accordion__box-title {
    width: 100%;
    font-weight: 500;
    padding: 3px 0;
    background-color: #d80c18;
    text-align: center;
    color: #ffffff;
    margin: 0;
}
.accordion__box-subtitle {
    margin: 18px 0 0;
    font-weight: 700;
    letter-spacing: 0.01em;
    text-align: center;
    color: #d80c18;
}
.accordion__content {
    padding: 0 2px;
}
.accordion__text {
    margin: 18px 0 0;
}
.accordion__image {
    max-width: 100%;
    margin: 18px auto 0;
}
.accordion__image.accordion__image1 {
    width: 282px;
}
.accordion__image.accordion__image2 {
    width: 248px;
}
.accordion__image.accordion__image3 {
    width: 135px;
    margin: 0 auto;
}
.accordion__image.accordion__image4 {
    width: 167px;
}
.accordion__image img {
    width: 100%;
}
.accordion__inner {
    margin-top: 25px;
}
.accordion__inner-box {
    position: relative;
    padding: 18px 10px;
    background-color: #fff7e5;
}
.accordion__inner-box + .accordion__inner-box {
    margin-top: 26px;
}
.accordion__inner-title {
    margin: 0;
}
.accordion__inner-text {
    margin: 12px 0 0;
    font-size: 13px;
}
.accordion__inner-image {
    max-width: 100%;
    position: absolute;
    top: -23%;
    right: 3%;
}
.accordion__inner-image.accordion__inner-image1 {
    width: 109px;
}
.accordion__inner-image.accordion__inner-image2 {
    width: 98px;
}
.accordion__inner-image.accordion__inner-image3 {
    width: 94px;
}
.accordion__inner-image img {
    width: 100%;
}
@media screen and (min-width: 769px) {
    .example__accordion {
        margin-top: 30px;
    }
    .accordion__wrap {
        padding: 42px 37px 48px;
    }
    .is-windows .accordion__wrap {
        padding: 42px 27px 48px;
    }
    .accordion__wrap.accordion__wrap--large {
        padding: 30px 50px 85px;
    }
    .accordion__content {
        padding: 0 19px;
    }
    .accordion__box:not(:first-of-type) {
        margin-top: 24px;
    }
    .accordion__box-title {
        font-size: 24px;
        padding: 11px 0;
    }
    .accordion__box-subtitle {
        margin: 24px 0 0;
        font-size: 24px;
    }
    .accordion__content.accordion__content--flex {
        display: flex;
        gap: 0 -15px;
    }
    .accordion__text {
        font-size: 18px;
        line-height: 1.5;
        margin: 24px 0 0;
        flex: 1;
    }
    .accordion__wrap.accordion__wrap--large .accordion__text {
        margin: 28px 0 0;
    }
    .accordion__btn {
        letter-spacing: 0.1em;
        width: 100%;
        max-width: 100%;
    }
    .accordion__image {
        margin: 24px auto 0;
    }
    .accordion__image.accordion__image1 {
        width: 405px;
    }
    .accordion__image.accordion__image2 {
        width: 195px;
    }
    .accordion__image.accordion__image3 {
        width: 192px;
    }
    .accordion__image.accordion__image4 {
        width: 260px;
        margin: 28px auto 0;
    }
    .accordion__inner {
        margin-top: 24px;
    }
    .accordion__inner-box {
        display: flex;
        justify-content: space-between;
        margin: 0 auto;
        padding: 24px 8px 24px 20px;
    }
    .accordion__inner-box + .accordion__inner-box {
        margin-top: 43px;
    }
    .accordion__inner-content {
        flex: 1;
    }
    .accordion__inner-title {
        font-size: 24px;
    }
    .accordion__inner-text {
        margin: 24px 0 0;
        font-size: 18px;
        letter-spacing: 0.1em;
        line-height: 1.5;
    }
    .accordion__inner-image {
        position: static;
        max-width: 100%;
    }
    .accordion__inner-image.accordion__inner-image1 {
        width: 187px;
    }
    .accordion__inner-image.accordion__inner-image2 {
        width: 175px;
    }
    .accordion__inner-image.accordion__inner-image3 {
        width: 173px;
    }
    .accordion__inner-image img {
        width: 100%;
    }
}

/*三菱UFJ eスマート証券で少額から資産形成をはじめよう！*/
.feature {
    position: relative;
    background-image: url(../img/coin.png);
    background-position: center 50px;
    background-size: 530px;
    background-color: #ffd5b0;
    padding: 60px 0;
}
@media screen and (min-width: 576px) {
    .feature {
        background-position: center 40px;
        background-size: 768px;
    }
}
@media screen and (min-width: 769px) {
    .feature {
        background-size: 820px;
    }
}
@media screen and (min-width: 992px) {
    .feature {
        background-position: center 50px;
        background-size: auto;
        background-repeat: no-repeat;
    }
}
.feature:before {
    position: absolute;
    content: "";
    border-bottom: 30px solid #fff;
    border-right: 50vw solid transparent;
    bottom: 0;
    left: 0;
}
.feature:after {
    position: absolute;
    content: "";
    border-bottom: 30px solid #fff;
    border-left: 50vw solid transparent;
    bottom: 0;
    right: 0;
}
.feature_title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    text-align: center;
    margin: 0;
    font-size: 20px;
}
@media screen and (max-width: 768px) {
    .feature_title img {
        width: 24px;
    }
}
.feature_subtitle {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    margin: 12px 0 30px;
}
.feature_subtitle span:first-of-type {
    letter-spacing: 0;
}
.whiteback {
    display: inline-block;
    background: #fff;
    border-radius: 5px;
    line-height: 1;
}
.feature_parent {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    text-align: center;
}
.feature_child {
    position: relative;
    width: 320px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 10px #d9a88c;
}
.feature_child a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.feature_child_title {
    background: #d80c18;
    color: #fff;
    margin: 0;
    border-radius: 10px 10px 0 0;
    padding: 10px 0 8px;
    font-size: 18px;
}
.feature_child_text {
    margin: 0;
    line-height: 1.6;
    padding: 12px 12px 28px 12px;
}
.feature_child:after {
    content: "";
    position: absolute;
    border-top: 13px solid #d80c18;
    border-left: transparent 13px solid;
    border-right: transparent 13px solid;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
    .feature_title {
        font-size: 26px;
    }
    .feature_subtitle {
        font-size: 26px;
    }
    .feature_child_title {
        padding: 14px 0 10px;
        font-size: 24px;
    }
    .feature_child_text {
        padding: 20px 20px 45px 20px;
    }
    .feature_child:after {
        bottom: 20px;
    }
}

.feature_block {
    position: relative;
    background: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 10px #d9a88c;
    max-width: 780px;
    margin: 0 auto;
    z-index: 1;
}
.feature_block_title {
    background: #eb5505;
    color: #fff;
    margin: 0;
    border-radius: 10px 10px 0 0;
    text-align: center;
    padding: 10px 0 8px;
    font-size: 18px;
}
.feature_block_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 20px;
    gap: 15px;
}
.feature_block_img {
    text-align: center;
    width: 164px;
    min-width: 164px;
}
.feature_block_text p {
    margin: 0;
}
.feature_block_text ul {
    padding: 0;
    margin: 0;
}
.feature_block_text li {
    list-style: none;
    background: url(../img/check.png);
    background-size: 18px;
    background-repeat: no-repeat;
    padding-left: 1.5em;
    margin-bottom: 0.3em;
}
.feature_block_text ul + p {
    font-size: 14px;
    margin: 16px 0 0 24px;
}
@media screen and (min-width: 769px) {
    .feature_block_content {
        flex-wrap: nowrap;
    }
    .reverse {
        flex-direction: row-reverse;
    }
    .feature_block_title {
        padding: 14px 0 10px;
        font-size: 24px;
    }
}

#feature-01,
#feature-02,
#feature-03 {
    position: relative;
}
#feature-01 {
    margin: 60px 0 40px;
}
#feature-03 {
    margin: 40px 0 20px;
}
#feature-01,
#feature-03 {
    background: #fff2e7;
}
#feature-02 {
    background: #ffe2c8;
}
#feature-01:before,
#feature-01:after,
.feature-01:before,
.feature-01:before,
#feature-02:before,
#feature-02:after,
.feature-02:before,
.feature-02:before,
#feature-03:before,
#feature-03:after,
.feature-03:before,
.feature-03:before {
    position: absolute;
    content: "";
}
#feature-01:before,
#feature-03:before {
    border-bottom: 30px solid #fff2e7;
    border-right: 50vw solid transparent;
    top: -30px;
    left: 0;
}
#feature-01:after,
#feature-03:after {
    border-top: 30px solid #fff2e7;
    border-left: 50vw solid transparent;
    bottom: -30px;
    right: 0;
}
#feature-02:before {
    border-bottom: 30px solid #ffe2c8;
    border-left: 50vw solid transparent;
    top: -30px;
    right: 0;
}
#feature-02:after {
    border-top: 30px solid #ffe2c8;
    border-right: 50vw solid transparent;
    bottom: -30px;
    left: 0;
}
@media screen and (max-width: 768px) {
    .feature-01:before,
    .feature-03:before {
        border-top: 30px solid #fff;
        border-left: 50vw solid transparent;
        top: 0;
        right: 0;
    }
    .feature-01:after,
    .feature-03:after {
        border-top: 30px solid #fff;
        border-left: 50vw solid transparent;
        bottom: 0;
        left: 0;
    }
    .feature-02:before {
        border-top: 30px solid #fff;
        border-right: 50vw solid transparent;
        top: 0;
    }
    .feature-02:after {
        border-bottom: 30px solid #fff;
        border-left: 50vw solid transparent;
        bottom: 0;
        right: 0;
    }
}
@media screen and (min-width: 769px) {
    #feature-01,
    #feature-02,
    #feature-03 {
        padding: 30px 0;
    }
    #feature-01 {
        margin: 100px 0 60px;
    }
    #feature-03 {
        margin: 60px 0 50px;
    }
    #feature-01:before,
    #feature-03:before {
        border-bottom: 60px solid #fff2e7;
        border-right: 100vw solid transparent;
        top: -60px;
        left: 0;
    }
    #feature-01:after,
    #feature-03:after {
        border-top: 60px solid #fff2e7;
        border-left: 100vw solid transparent;
        bottom: -60px;
        right: 0;
    }
    #feature-02:before {
        border-bottom: 60px solid #ffe2c8;
        border-left: 100vw solid transparent;
        top: -60px;
        right: 0;
    }
    #feature-02:after {
        border-top: 60px solid #ffe2c8;
        border-right: 100vw solid transparent;
        bottom: -60px;
        left: 0;
    }
}

.btn-01 {
    padding: 35px 0;
}

/*マネ活プラン*/
#moneyactivity {
    background: #fff7e5;
    padding: 30px 0;
}
.moneyactivity_title {
    width: 500px;
    margin: 30px auto;
    display: block;
}
.moneyactivity_block {
    background: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 10px #d8ccc5;
    max-width: 780px;
    margin: 0 auto 30px;
}
.moneyactivity_block_title {
    background: #eb5505;
    color: #fff;
    margin: 0;
    border-radius: 10px 10px 0 0;
    text-align: center;
    padding: 10px 0 6px;
    font-size: 24px;
}
.moneyactivity_block_content {
    padding: 20px;
}
.moneyactivity_block_text {
    padding: 20px;
}
.moneyactivity_block_text .acenter {
    text-align: center;
}
.moneyactivity_block_text ul.note01 {
    font-size: 14px;
    padding: 0;
}
.moneyactivity_block_text ul.note01 li {
    position: relative;
    background: none;
    padding: 0 0 5px 35px;
    list-style-type: none;
}
.moneyactivity_block_text ul.note01 li span.mark {
    position: absolute;
    top: 0;
    left: 0;
}
.moneyactivity_block_img .sphidden {
    width: 650px;
    margin: 0 auto;
    display: block;
}
@media screen and (max-width: 768px) {
    .moneyactivity_title {
        width: 100%;
    }
}
/*三菱UFJ eスマート証券でおトクに資産形成*/
.plan {
    background: #e9e9e9;
    padding: 30px 0;
}
.plan_subtitle {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    margin: 12px 0 30px;
}
@media screen and (min-width: 769px) {
    .plan_subtitle {
        font-size: 26px;
    }
}
.orangeback {
    display: inline-block;
    background: #eb5505;
    color: #fff;
    border-radius: 5px;
    line-height: 1;
    padding: 10px 15px 6px 15px;
}
.plan_list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
    align-items: center;
    line-height: 0;
    margin: 0 auto 50px;
}
.plan_list.pchidden {
    max-width: 335px;
}
.plan_list_link img {
    box-shadow: 2px 2px 10px #d8ccc5;
}

.plan_block {
    background: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 10px #d8ccc5;
    max-width: 780px;
    margin: 0 auto 30px;
}
.plan_block_title {
    background: #eb5505;
    color: #fff;
    margin: 0;
    border-radius: 10px 10px 0 0;
    text-align: center;
    padding: 10px 0 6px;
    font-size: 18px;
}
.plan_block_title:before {
    display: inline-block;
    content: url(../img/hand.png);
    vertical-align: middle;
    margin: -20px -8px 0 -12px;
    height: 32px;
    transform: scale(0.5);
}
.plan_block_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 20px;
    gap: 15px;
}
.plan_block_img {
    text-align: center;
    width: 164px;
    min-width: 164px;
}
.plan_block_text p {
    margin: 0;
}
.plan_block_text p + p {
    margin-top: 1em;
}
@media screen and (min-width: 769px) {
    .plan_block_content {
        flex-wrap: nowrap;
    }
    .plan_block_title {
        padding: 14px 0 8px;
        font-size: 24px;
    }
}

/*優待クロス取引とは？？株価の変動リスクを抑えておトクに株主優待をGET*/
.yutai {
    position: relative;
    background: #fee;
    margin-top: 25px;
    padding: 35px 0;
}
.question {
    position: absolute;
    top: -28px;
    left: 50%;
    transform: translateX(-50%);
    width: 56px;
}
.yutai_title {
    text-align: center;
    font-size: 20px;
}
.yutai_title span {
    position: relative;
    display: inline-block;
    background: #fff;
    color: #d80c18;
    border-radius: 5px;
    padding: 10px 15px 4px 15px;
    margin-top: 5px;
    font-size: 24px;
}
.yutai_title span img {
    position: absolute;
    top: -10px;
    left: -15px;
    width: 31px;
}
.yutai_text {
    line-height: 1.5;
    margin: 20px 0 30px;
}
.pinkback {
    background: #e5687d;
    color: #fff;
    padding: 2px 5px 0;
    border-radius: 3px;
    margin: 0 3px;
}
.blueback {
    background: #5e8ed1;
    color: #fff;
    padding: 2px 5px 0;
    border-radius: 3px;
    margin: 0 3px;
}
@media screen and (min-width: 769px) {
    .yutai_title {
        font-size: 22px;
    }
    .yutai_title span {
        font-size: 26px;
    }
    .yutai_text {
        text-align: center;
    }
}
.yutai_image {
    max-width: 670px;
    margin: 0 auto;
}
.yutai_subtitle_image {
    text-align: center;
    background: #e5687d;
    color: #fff;
    padding: 12px 12px 10px 12px;
    border-radius: 5px;
    margin-bottom: 10px;
    font-size: 18px;
}
.yutai_subtitle_caution {
    text-align: center;
    background: #e5e5e5;
    padding: 12px 12px 8px 12px;
    border-radius: 5px;
    margin: 30px 0 10px;
    font-size: 18px;
}
.yutai_subtitle_caution img {
    vertical-align: middle;
    margin: 0 3px 4px 0;
    width: 29px;
}
@media screen and (min-width: 769px) {
    .yutai_image {
        max-width: 600px;
    }
    .yutai_subtitle_image,
    .yutai_subtitle_caution {
        font-size: 20px;
    }
}

/* 安心・安全な取引のためのセキュリティ対策 */
.security {
    padding: 30px 0;
    background-color: #ffd5b0;
}
.security__heading.feature_title {
    font-size: 19px;
    justify-content: space-between;
    letter-spacing: 0.08em;
}
.security__text {
    margin: 32px 0 0;
    padding: 0 0 0 5px;
    letter-spacing: 0.02em;
}
.security__wrap {
    margin: 40px 0 0;
    padding: 30px 18px 33px;
    background-color: #ffffff;
    border-radius: 10px;
    box-shadow: 0 0 9px rgba(0, 0, 0, 0.25);
}
.security__box {
    padding-bottom: 28px;
}
.security__box:nth-of-type(4) {
    background-image: linear-gradient(to right, #9d9e9e 8px, transparent 8px);
    background-size: 12px 2px;
    background-repeat: repeat-x;
    background-position: left bottom;
}
.security__title {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.01em;
    margin: 0;
    padding: 4px 0;
    color: #ffffff;
    background-color: #eb5505;
    text-align: center;
    justify-content: space-between;
}
.security__title.security__title--reverse {
    color: #eb5505;
    background-color: transparent;
    letter-spacing: 0.05em;
}
.security__content {
    display: flex;
    justify-content: space-between;
    gap: 0 10px;
    margin-top: 16px;
}
.security__image {
    margin: 15px auto 0;
}
.security__image.security__image1 {
    width: 44px;
}
.security__image.security__image2 {
    width: 44px;
}
.security__image.security__image3 {
    width: 80px;
}
.security__image.security__image4 {
    width: 63px;
}
.security__image img {
    width: 100%;
}
.security__inner-box {
    width: 65.4%;
}
.security__inner-box span {
    display: block;
    font-size: 9px;
    line-height: 1.7;
    letter-spacing: 0;
}
.security__inner-box span:first-of-type {
    margin-top: 8px;
}
.security__inner-text {
    font-size: 12px;
    line-height: 1.8;
    letter-spacing: 0.07em;
    margin: 0;
}
.security__block {
    margin-top: 20px;
    padding: 0 20px;
}
.security__inner-block {
    display: flex;
    flex-direction: column;
    gap: 18px 0;
    margin-top: 20px;
}
.security__icon-box {
    display: flex;
    align-items: center;
    gap: 0 17px;
}
.security__icon {
    width: 41px;
}
.security__block-text {
    margin: 0;
    font-weight: 500;
    letter-spacing: 0.02em;
}
@media screen and (min-width: 769px) {
    .security {
        padding: 83px 0 85px;
        background-color: #ffd5b0;
    }
    .security__heading.feature_title {
        font-size: 28px;
        justify-content: center;
        letter-spacing: 0.08em;
        gap: 0 66px;
    }
    .security .inner {
        max-width: 856px;
    }
    .security__text {
        margin: 20px 0 0;
        padding: 0 0 0 5px;
        letter-spacing: 0.02em;
        font-size: 18px;
        line-height: 1.5;
    }
    .security__wrap {
        margin: 62px 0 0;
        padding: 59px 40px;
    }
    .security__box {
        padding-bottom: 50px;
    }
    .security__title {
        font-size: 24px;
        letter-spacing: 0.01em;
        padding: 9px 0;
    }
    .is-windows .security__title {
        padding-top: 13px;
    }
    .security__title.security__title--reverse {
        color: #eb5505;
        background-color: transparent;
        letter-spacing: 0.05em;
    }
    .security__content {
        display: flex;
        justify-content: space-between;
        gap: 0 10px;
        margin-top: 30px;
        padding: 0 13px;
    }
    .security__image {
        margin: 0 auto 0;
    }
    .security__image.security__image1 {
        width: 69px;
    }
    .security__image.security__image2 {
        width: 86px;
    }
    .security__image.security__image3 {
        width: 141px;
    }
    .security__image.security__image4 {
        width: 105.4px;
    }
    .security__image img {
        width: 100%;
    }
    .security__inner-box {
        width: 70.9%;
    }
    .security__inner-box span {
        font-size: 12px;
        line-height: 2.1;
        letter-spacing: 0;
        padding-left: 20px;
    }
    .security__inner-box span:first-of-type {
        margin-top: 8px;
    }
    .security__inner-text {
        font-size: 18px;
        line-height: 1.5;
        letter-spacing: 0.09em;
        margin: 0;
    }
    .security__block {
        margin-top: 50px;
    }
    .security__inner-block {
        flex-direction: row;
        justify-content: center;
        gap: 0 30px;
    }
    .security__icon-box {
        flex-direction: column;
        align-items: center;
        gap: 4px 0;
    }
    .security__icon {
        width: 79px;
    }
    .security__block-text {
        margin: 6px 0 0;
        letter-spacing: 0.02em;
        text-align: center;
    }
}

/*フッター*/
footer {
    padding: 50px 0;
}
footer p {
    margin: 0;
}
.footer_note {
    list-style: "●";
    padding-left: 1em;
    margin: 0 0 30px 0;
}
.infomation {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
}
.association {
    text-indent: -5.5em;
    padding-left: 5.5em;
}

/*---------------------------------------------*/
/* cpn【キャンペーン情報】 */
/*---------------------------------------------*/

#cpn {
    padding: 30px 0;
    background: #fff2e7;
}
.campaign__bnr {
    text-align: center;
}
.campaign__bnr img {
    width: 560px;
    text-align: center;
}
.cpn__title {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 20px;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    color: #d80c18;
    align-items: center;
}
.cpn__title .heading--pop {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    font-size: 18px;
    position: relative;
    text-align: center;
    width: -moz-fit-content;
    width: fit-content;
    color: #333333;
}
.heading--pop::before {
    content: "";
    width: 16px;
    height: 14px;
    background-image: url(/2024renew_assets/imgs/common/icon_heading_pop.svg);
}
.heading--pop::after {
    content: "";
    width: 16px;
    height: 14px;
    background-image: url(/2024renew_assets/imgs/common/icon_heading_pop.svg);
    transform: scaleX(-1);
}
@media screen and (max-width: 768px) {
    .cpn__title {
        font-size: 20px;
    }
    .cpn__title .heading--pop {
        font-size: 14px;
    }
    .campaign__bnr img {
        width: 100%;
    }
}
/*---------------------------------------------*/
/* modal【キャンペーン概要】 */
/*---------------------------------------------*/
#modal1 button,
#modal2 button {
    cursor: pointer;
}

#modal1 button:hover,
#modal2 button:hover {
    opacity: 0.7;
}

#modal1 button.modalOpen,
#modal2 button.modalOpen {
    font-family: "Noto sans JP", sans-serif;
    font-weight: 600;
    font-size: 16px;
    border: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background-color: var(--bg-color);
    margin: 0 auto;
}

#modal1,
#modal2 {
    display: none;
    position: fixed;
    z-index: 2;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 200;
}

#modal1 .modal-box,
#modal2 .modal-box {
    background-color: #fff;
    margin: 16vh auto;
    width: 1000px;
    height: 70vh;
    overflow-y: scroll;
    padding: 50px 0;
    box-sizing: border-box;
    animation-name: modalopen;
    animation-duration: 0.5s;
    position: relative;
}
#modal1 .modal-box .inner a,
#modal2 .modal-box .inner a {
    display: inline;
}

@keyframes modalopen {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

#modal1 .modalClose,
#modal2 .modalClose {
    position: fixed;
    top: calc(10vh + 20px);
    right: calc(50% - 450px);
    width: 70px;
    height: 70px;
    text-align: center;
    border-radius: 35px;
    color: #e60000;
    background-color: #ffffff;
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.1));
    border: 0;
    font-size: 40px;
    font-weight: 100;
    font-family: "Open sans", sans-serif;
    z-index: 300;
}

#modal1 .modal-box .inner,
#modal2 .modal-box .inner {
    width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    padding: 0;
    gap: 20px;
}

#modal1 .modal-box .inner h3,
#modal2 .modal-box .inner h3 {
    font-size: 30px;
    line-height: 1.4;
    margin-bottom: 40px;
    text-align: center;
}

#modal1 .modal-box .inner h3 span,
#modal2 .modal-box .inner h3 span {
    display: block;
    font-size: 20px;
    color: var(--red-color);
}

#modal1 .modal-box .inner table,
#modal2 .modal-box .inner table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

#modal1 .modal-box .inner table th,
#modal2 .modal-box .inner table th {
    width: 200px;
    text-align: left;
    background-color: #eee;
    border: 1px solid #ccc;
    vertical-align: top;
    box-sizing: border-box;
    padding: 20px;
    font-size: 16px;
}
#modal1 .modal-box .inner table td,
#modal2 .modal-box .inner table td {
    width: 700px;
    text-align: left;
    background-color: #fff;
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 20px;
    font-size: 14px;
}
#modal1 .modal-note-list,
#modal2 .modal-note-list {
    margin-left: 30px;
}
#modal1 .modal-note-list li,
#modal2 .modal-note-list li {
    position: relative;
    padding-bottom: 10px;
}
#modal1 .modal-note-list li::before,
#modal2 .modal-note-list li::before {
    content: "※";
    width: 28px;
    height: 28px;
    position: absolute;
    left: -30px;
}
#modal1 .campaign-tokuten img,
#modal2 .campaign-tokuten img {
    max-width: 866px;
    margin: 0 auto;
    padding: 20px;
}
#modal1 .modal-red-midashi,
#modal2 .modal-red-midashi {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    background: #c1111a;
    color: #fff;
    padding: 1px 0;
}
#modal1 .modal-gray-midashi,
#modal2 .modal-gray-midashi {
    text-align: center;
    font-size: 30px;
    font-weight: 600;
    background: #7e7e7e;
    color: #fff;
    padding: 1px 0;
}
.scroll-wrapper {
    position: relative;
    overflow-x: auto;
}
.campaign-table01 {
    max-width: 622px;
}
.campaign-table02 {
    max-width: 596px;
}
.campaign-table03 {
    max-width: 749px;
}
.scroll-inner {
    min-width: 500px;
}
img.scroll-inner {
    height: auto;
    width: 100%;
    max-width: 100%;
}
.scroll-hint {
    display: none;
}
.scrolled .scroll-overlay,
.scrolled .scroll-hint {
    opacity: 0;
}

@keyframes hintMove {
    0% {
        transform: translateX(0);
        opacity: 0.6;
    }
    50% {
        transform: translateX(-10px);
        opacity: 1;
    }
    100% {
        transform: translateX(0);
        opacity: 0.6;
    }
}

.scroll-hint {
    animation: hintMove 2s infinite ease-in-out;
}

.scrolled .scroll-hint {
    opacity: 0;
    pointer-events: none;
    animation: none;
}
.u-text-S {
    font-size: 12px;
}

/*　for SP　*/
@media screen and (max-width: 768px) {
    #modal1 button.modalOpen,
    #modal2 button.modalOpen {
        font-size: calc(14 * (100vw / 375));
        gap: calc(10 * (100vw / 375));
    }

    #modal1 .modal-note-list,
    #modal2 .modal-note-list {
        margin-left: 22px;
    }
    #modal1 .modal-note-list li::before,
    #modal2 .modal-note-list li::before {
        left: -22px;
    }

    #modal1 .modal-box,
    #modal2 .modal-box {
        margin: 6vh auto;
        width: calc(355 * (100vw / 375));
        height: 88vh;
        padding: calc(30 * (100vw / 375)) 0;
    }

    #modal1 .modalClose,
    #modal2 .modalClose {
        top: calc(15vh - calc(20 * (100vw / 375)));
        right: calc(50% - calc(150 * (100vw / 375)));
        width: calc(40 * (100vw / 375));
        height: calc(40 * (100vw / 375));
        border-radius: calc(20 * (100vw / 375));
        font-size: calc(20 * (100vw / 375));
    }

    #modal1 .modal-box .inner,
    #modal2 .modal-box .inner {
        width: calc(330 * (100vw / 375));
        margin: 0 auto;
    }

    #modal1 .modal-box .inner h3,
    #modal2 .modal-box .inner h3 {
        font-size: calc(16 * (100vw / 375));
        text-align: left;
        margin-bottom: calc(20 * (100vw / 375));
    }

    #modal1 .modal-box .inner h3 span,
    #modal2 .modal-box .inner h3 span {
        font-size: calc(13 * (100vw / 375));
    }

    #modal1 .modal-box .inner table,
    #modal2 .modal-box .inner table {
        font-size: calc(14 * (100vw / 375));
        line-height: 1.6;
    }

    #modal1 .modal-box .inner table th,
    #modal2 .modal-box .inner table th {
        display: block;
        width: 100%;
        border-top: 3px solid #ccc;
        border-bottom: none;
        padding: calc(10 * (100vw / 375));
    }

    #modal1 .modal-box .inner table td,
    #modal2 .modal-box .inner table td {
        display: block;
        width: 100%;
        border-bottom: none;
        padding: calc(14 * (100vw / 375));
    }

    #modal1 .modal-box .inner table td:last-child,
    #modal2 .modal-box .inner table td:last-child {
        border-bottom: 1px solid #ccc;
    }
    #modal1 .campaign-tokuten img,
    #modal2 .campaign-tokuten img {
        padding: 3vw 0vw;
        width: 100%;
    }
    #modal1 .modal-red-midashi,
    #modal2 .modal-red-midashi {
        font-size: 18px;
    }
    #modal1 .modal-gray-midashi,
    #modal2 .modal-gray-midashi {
        font-size: 18px;
    }
    .scroll-wrapper {
        max-width: 80vw;
    }
    .scroll-hint {
        display: block;
        position: absolute;
        top: 30%;
        left: 113px;
        transition: opacity 0.3s ease;
    }
    .scroll-hint img {
        width: 70px;
    }
    #modal1 .modal-box,
    #modal2 .modal-box {
        margin: 15vh auto;
    }
}

/*　marked-list　*/
.marked-list {
  list-style: none;
}
.marked-list > li {
  position: relative;
  font-size: 12px;
}
.marked-list > li::before
 {
  position: absolute;
  left: 0;
  font-weight: inherit;
}
.marked-list--kome {
  font-size: 0.75em;
}
.marked-list--ordered {
  counter-reset: list-counter;
}
.marked-list--ordered > li {
  padding-left: 1.5em;
}
.marked-list--ordered > li::before {
  counter-increment: list-counter;
  content: counter(list-counter) ". ";
}
.marked-list--ordered .one-digit {
  padding-left: 1.5em;
}
.marked-list--ordered .two-digits {
  padding-left: 2em;
}
.marked-list--ordered .three-digits {
  padding-left: 2.5em;
}
.marked-list--kome {
  font-size: var(--fs-s);
}
.marked-list--kome > li {
  padding-left: 1.5em;
}
.marked-list--kome > li::before {
  content: "※";
}
.marked-list--ordered-kome {
  counter-reset: list-counter;
  font-size: var(--fs-s);
}
.marked-list--ordered-kome > li {
  padding-left: 2.2em;
}
.marked-list--ordered-kome > li::before {
  counter-increment: list-counter;
  content: "※" counter(list-counter);
}
.marked-list--ordered-kome .one-digit {
  padding-left: 2.2em;
}
.marked-list--ordered-kome .two-digits {
  padding-left: 2.7em;
}
.marked-list--ordered-kome .three-digits {
  padding-left: 3.2em;
}

/* ///////////////////////// */

.u-text-indent {
	text-indent: -1em;
	margin-left: 1em;
}
.u-text-red {
	color: #d80c18;
}
.mb0 {
  margin-bottom: 0;
}

/*----------------------------------------
header欄 記述から移行したもの
----------------------------------------*/

.reason-layout-center {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.reason-layout-center+.reason-layout-center {
    margin-top: 60px;
}

.reason-04-group {
    background-color: #fbf6f4;
    padding: 40px 0;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}

.reason-04-ico {
    width: 60px;
}

.reason-04-cnt {
    width: 690px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.reason-04-plus {
    margin: -20px auto;
    z-index: 1;
}

.reason-04-cnt p:nth-of-type(1) {
    color: hsl(21.1, 95.8%, 47.1%);
    font-size: 20px;
    font-weight: 700;
}

.reason-04-plus {
    margin: -50px auto;
    z-index: 1;
}

.reason-box {
    width: 940px;
    height: auto;
    background-color: var(--white-color);
    border-radius: 30px;
    padding: 60px;
    box-sizing: border-box;
    margin: 0 auto;
}

@media screen and (min-width: 769px) {
    .sp-view {
      display: none;
    }
    img {
        width: auto;
        vertical-align: bottom;
    }
    #page-container .u-text-S {
        font-size: 13px;
    }
}
@media screen and (max-width: 768px) {
    .reason-layout-center {
        display: flex;
        flex-direction: column;
        gap: calc(30 * (100vw / 375));
    }

    .reason-layout-center+.reason-layout-center {
        margin-top: 60px;
    }

    .pc-view {
        display: none;
    }

    .reason-box {
        width: calc(355 * (100vw / 375));
        border-radius: calc(20 * (100vw / 375));
        padding: 10px;
        margin: 0 auto;
    }

    .reason-04-group {
        background-color: #fbf6f4;
        padding: calc(20 * (100vw / 375));
        box-sizing: border-box;
        display: block;
    }

    .reason-04-ico {
        /* width: calc(60 * (100vw / 375)); */
        margin: 0 auto calc(10 * (100vw / 375));
    }

    .reason-04-cnt {
        width: auto;
        display: flex;
        flex-direction: column;
        gap: calc(10 * (100vw / 375));
    }

    .reason-04-cnt p:nth-of-type(1) {
        color: hsl(21.1, 95.8%, 47.1%);
        font-size: calc(16 * (100vw / 375));
        font-weight: 700;
    }

    .reason-04-plus {
        /* width: calc(50 * (100vw / 375)); */
        margin: calc(5 * (100vw / 375)) auto;
    }
    .reason-04-top img {
        width: 100%;
    }
	.reason-box .reason-04-cnt img {
		width: 100%;
	}
	.reason-04-btm img {
		width: 100%;
	}
}


/*----------------------------------------
PC時の中間サイズ調整
----------------------------------------*/

@media screen and (min-width: 769px) and (max-width: 1000px) {
	.reason-box {
		width: initial;
	}
	.reason-box .reason-04-top img{
		width: 100%;
	}
	.reason-box .reason-04-cnt img {
		width: 100%;
	}
	.reason-04-group {
		padding: 40px 40px;
	}
}