body {
    margin: 0;
    padding: 0;
    background-image: url(../image/bk.png);
    background-position: 100%;
    background-size: 100%;
    background-repeat: repeat;
    font-family: 'Noto Sans JP', 'Hiragino Gothic';
    color: #fff;
    width: 100%;
    box-sizing: border-box;
}
main{
    text-align: center;
    margin-bottom: calc((180/1440)*100vw);
}
@media screen and (min-width:751px) {
    .border-gradation br,
    h4 br,
    .sp,
    .Menu {
        display: none;
    }
}
/*-------header------*/
header {
    margin: 0 auto;
    position: relative;
    z-index:0;
}
#header.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
}
.header_inr {
    background-color: #fff;
    box-shadow: 0 4px 4px rgb(0 0 0 / 25%);
    box-sizing: border-box;
    width: 100%;
    display: flex;
    padding: 0 calc((50/1440)*100vw);
    justify-content: space-between;
    align-items: center;
    z-index: 999;
}
.header_inr img {
    width: calc((200/1440)*100vw);
}
.pc_menu ul {
    display: flex;
    gap: calc((40/1440)*100vw);
    align-items: center;
}
.header_inr li {
    position: relative;
    list-style: none;
}
@media screen and (min-width:751px) {
    .header_inr li {
        height: calc((80/1440)*100vw);
        display: flex;
        align-items: center;
    }
}
.header_inr ul button {
    display: flex;
    gap: calc((40/1440)*100vw);
    padding: calc((5/1440)*100vw) 0;
    border: none;
}
.header_inr ul button a {
    font-size: calc((14/1440)*100vw);
    font-weight: bold;
    letter-spacing: 0;
    text-decoration: none;
    padding: calc((5/1440)*100vw) calc((20/1440)*100vw);
    color: #fff;
    display: flex;
    align-items: center;
    gap: calc((10/1440)*100vw);
    justify-content: center;
}
.pc_menu{
    display: flex;
    justify-content: right;
    gap: 0 calc((40/1440)*100vw);
    align-items: center;
}
.pc_menu a {
    font-size: max((16/1440)*100vw,13px);
    text-decoration: none;
    color: #171B2E;
    font-weight: bold;
}
.pc_menu li a {
    display: inline-block;
    transition: all .3s ease 0s;
    text-decoration: none;
}
.pc_menu li a:hover {
    cursor: pointer;
    color: #066FC8;
}
.header_inr .pc_menu li a::after {
    background: -webkit-linear-gradient(-45deg, rgba(24, 131, 255, 1), rgba(138, 199, 255, 1) 70%, rgba(204, 188, 255, 1) 85%, rgba(255, 160, 233, 1));
    bottom: 0;
    content: "";
    height: calc((3/1440)*100vw);
    left: 0;
    position: absolute;
    opacity: 0;
    transition: all 0.3s;
    width: 100%;
}
.header_inr .pc_menu li a:hover::after {
    opacity: 1;
}
.sp_menu {
    display: none;
}
/*-------fv------*/
.fv_title{
    margin-bottom: calc((140/1440)*100vw);
}
.fv_title img{
    width: 100%;
}
.fv_title.sp_fv{
    display: none;
}
/*-------contact------*/
.contact, .downlord {
    width: calc((550/1440)*100vw);
    margin: 0 auto;
    position: relative;
    border-radius: calc((16/1440)*100vw);
    border: none;
    box-shadow: 8px 8px 4px rgb(0 0 0 / 25%);
    transition: all 0.2s ease;
    outline: none;
    overflow: hidden;
    text-decoration: none;
    font-family: 'Noto Sans JP', 'Hiragino Gothic';
}
.contact, .head_contact { background: #2063AE; }
.downlord { margin-left: calc((20/1440)*100vw); background: linear-gradient(90deg, #0072BF 0%, #12B7EB 30%,#F2A8C8); }
.contact:hover, .downlord:hover {
    border-color: transparent;
}
.pushdown:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: calc((4/1440)*100vw);
    left: 0;
    width: 100%;
    height: 100%;
}
.pushdown:hover {
    color: #fff;
    transform: translateY(calc((4/1440)*100vw));
}
.contact::before, .downlord::before {
    content: '';
    position: absolute;
    top: 0;
    left: -75%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
    transform: skewX(-25deg);
}
.contact:hover::before, .downlord:hover::before {
    animation: shine 1s;
}
.button_dl::after, .button_top::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%);
    border: calc((18/1440)*100vw) solid transparent;
    border-left: calc((20/1440)*100vw) solid #fff;
}
.contact.head_contact, .downlord.head_downlord{
    box-shadow: none;
}
.contact.head_contact::after, .downlord.head_downlord::after{
    content: none;
}
@keyframes shine {
    100% {
        left: 125%;
    }
}
.contact a, .downlord a {
    width: 100%;
    position: relative;
    padding: calc((25/1440)*100vw) 0;
    font-size: calc((36/1440)*100vw);
    font-weight: bold;
    letter-spacing: calc((2/1440)*100vw);
    text-decoration: none;
    color: #fff;
    display: flex;
    align-items: center;
    gap: calc((20/1440)*100vw);
    justify-content: center;
    transition: all 0.3s ease;
}
.head_contact, .head_downlord {
    box-sizing: border-box;
    width: calc((200/1440)*100vw);
    margin-top: 0;
    border-radius: calc((6/1440)*100vw);
}
.head_downlord { background: linear-gradient(135deg, #0072BF 0%, #12B7EB 30%,#F2A8C8); }
.head_contact a, .head_downlord a {
    font-size: calc((16/1440)*100vw);
    padding: calc((16/1440)*100vw) 0 calc((16/1440)*100vw) calc((10/1440)*100vw);
    letter-spacing: normal;
}
/*--------->-----------*/
.dli-chevron-round-right {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    line-height: 1;
    position: relative;
    width: calc((12/1440)*100vw);
    height: calc((12/1440)*100vw);
    transform: translateX(-25%) rotate(45deg);
}
.pc_menu ul .dli-chevron-round-right {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    line-height: 1;
    position: relative;
    width: calc((10/1440)*100vw);
    height: calc((10/1440)*100vw);
    transform: translateX(-25%) rotate(45deg);
}
.pc_menu ul .dli-chevron-round-right::before {
    top: 0;
    left: 0;
    right: 0;
    height: calc((3/1440)*100vw);
}
.pc_menu ul .dli-chevron-round-right::after {
    top: 0;
    right: 0;
    bottom: 0;
    width: calc((3/1440)*100vw);
}
.dli-chevron-round-right::before,
.dli-chevron-round-right::after {
    content: '';
    position: absolute;
    background: currentColor;
    border-radius: 0.1em;
}
.dli-chevron-round-right::before {
    top: 0;
    left: 0;
    right: 0;
    height: calc((4/1440)*100vw);
}
.dli-chevron-round-right::after {
    top: 0;
    right: 0;
    bottom: 0;
    width: calc((4/1440)*100vw);
}
/*-------overview------*/
#overview{
    width: calc((1225/1440)*100vw);
    margin: calc((120/1440)*100vw) auto;
    margin-bottom: calc((170/1440)*100vw);
    padding: calc((70/1440)*100vw) 0;
    background-color: #fff;
    color: #002F7B;
    border-radius: 16px;
    box-shadow: 8px 8px 4px rgb(0 0 0 / 30%);
}
#overview>ul{
    display: flex;
    flex-wrap:wrap;
    justify-content:center;
    gap: calc((35/1440)*100vw) calc((50/1440)*100vw);
    font-size: calc((26/1440)*100vw);
    line-height:1.5em;
    margin-bottom: calc((55/1440)*100vw);
}

#overview>ul>li{
    width: calc((540/1440)*100vw);
    background-color: #DBEBFF;
    padding: calc((40/1440)*100vw) 0;
    font-weight: bold;
    border-radius: calc((16/1440)*100vw);
}
#overview>p{
    font-weight: bold;
    font-size: calc((48/1440)*100vw);
    color: #414241;
    margin-bottom: calc((60/1440)*100vw);
}
#overview .arrow{
    margin-bottom: calc((30/1440)*100vw);
}
#overview .arrow img{
    max-width: 90px;
    width: calc((90/1440)*100vw);
}
#overview .blue_fwb{
    color: #2063AE;
    font-size: calc((64/1440)*100vw);
}
#overview .red_fwb{
    color: #D3174F;
    font-size: calc((64/1440)*100vw);
    position: relative;
    margin-bottom: calc((20/1440)*100vw);
}
#overview .red_fwb::before{
    content: "";
    position: absolute;
    width:calc((840/1440)*100vw);
    height:4px;
    background-color:#D3174F;
    bottom:-12px;
    left:50%;
    transform: translateX(-50%);
}
#overview .red_fwb::after{
    content: "";
    position: absolute;
    width:calc((840/1440)*100vw);
    height:4px;
    background-color:#D3174F;
    bottom: -19px;
    left:50%;
    transform: translateX(-50%);
}
/*-------point------*/
#point{
    margin-bottom: calc((170/1440)*100vw);
}
#point>ul{
    margin: calc((100/1440)*100vw);
    margin-bottom: 0;
    display: flex;
    justify-content:center;
    gap: 0 calc((48/1440)*100vw);
}
#point>ul>li{
    position: relative;
    width: calc((270/1440)*100vw);
    background-color: #fff;
    color: #0B3378;
    font-size: calc((20/1440)*100vw);
    padding-top: calc((70/1440)*100vw);
    border-radius: calc((16/1440)*100vw);
    box-shadow: 8px 8px 4px rgb(0 0 0 / 25%);
}
#point>ul>li>p{
    line-height: 1.5em;
    padding-bottom: calc((30/1440)*100vw);
    font-weight: bold;
}
#point>ul>li>p>img{
    width:calc((200/1440)*100vw);
}
#point>ul>li>p>span{
    color: #D3174F;
    font-size: calc((26/1440)*100vw);
}
#point>ul>li::before{
    content: "";
    width: calc((100/1440)*100vw);
    height: calc((100/1440)*100vw);
    background-image: url(../image/point01.png);
    background-size:contain;
    background-repeat:no-repeat;
    position: absolute;
    top: calc((-30/1440)*100vw);
    left: calc((-30/1440)*100vw);
}
#point>ul>li:nth-child(2)::before{
    background-image: url(../image/point02.png);
}
#point>ul>li:nth-child(3)::before{
    background-image: url(../image/point03.png);
}
#point>ul>li:nth-child(4)::before{
    background-image: url(../image/point04.png);
}
/*-------work------*/
#work{
    margin-bottom: calc((180/1440)*100vw);
}
#work>p{
    margin-bottom: calc((145/1440)*100vw);
    font-size: calc((64/1440)*100vw);
    font-weight: bold;
    line-height: 1.5em;
}
#work>ul{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc((70/1440)*100vw) calc((96/1440)*100vw);
}
#work>ul>li{
    width: calc((564/1440)*100vw);
}
#work>ul>li>p{
    width: calc((300/1440)*100vw);
    display: inline-block;
    margin-bottom: calc((64/1440)*100vw);
    padding: calc((12/1440)*100vw) 0;
    font-weight: bold;
    font-size: calc((36/1440)*100vw);
    background-color: #fff;
    border-radius: calc((30/1440)*100vw);
    box-shadow: 8px 8px 4px rgb(0 0 0 / 25%);
}
#work>ul>li>p.sp{
    display: none;
}
#work .before{
    color: #EE8E00;
}
#work .after{
    background-color: #EE8E00;
    color: #fff;
}
#work>ul>li>img{
    width: calc((564/1440)*100vw);
}
/*-------service------*/
#service{
    margin-bottom: calc((180/1440)*100vw);
}
#service>h3{
    margin-bottom: calc((94/1440)*100vw);
    padding: 0 calc((115/1440)*100vw);
    font-weight: bold;
    font-size: calc((36/1440)*100vw);
    position: relative;
    display: inline-block;
}
#service>h3::before, #service>h3::after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: calc((100/1440)*100vw);
    height: 2px;
    background-color: #fff;
}
#service>h3::before {
    left:0;
}
#service>h3::after {
    right: 0;
}
#service>ul{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc((34/1440)*100vw) calc((40/1440)*100vw);
}
#service>ul>li{
    width: calc((380/1440)*100vw);
    display: inline-block;
    padding: calc((20/1440)*100vw) 0;
    font-weight: bold;
    font-size: calc((24/1440)*100vw);
    color: #2063AE;
    background-color: #DBEBFF;
    border-radius: calc((30/1440)*100vw);
    box-shadow: 8px 8px 4px rgb(0 0 0 / 25%);
}
/*-------白背景------*/
.bk_wh{
    margin-bottom: calc((180/1440)*100vw);
    padding: calc((110/1440)*100vw) 0;
    color: #0B3378;
    background-color: #fff;
}
/*-------ostechpoint------*/
#ostechpoint{
    line-height: 1.5em;
    margin-bottom: calc((180/1440)*100vw);
}
#ostechpoint>h3{
    margin-bottom: calc((100/1440)*100vw);
    position: relative;
    font-size: calc((43/1440)*100vw);
    z-index: 1;
}
#ostechpoint>h3::after{
    content: "";
    position: absolute;
    background-color: #FFE6EF;
    width: calc((610/1440)*100vw);
    height: calc((28/1440)*100vw);
    bottom: calc((-20/1440)*100vw);
    left:50%;
    transform: translateX(-50%);
    z-index: -1;
}
#ostechpoint>ul{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc((44/1440)*100vw) calc((40/1440)*100vw);
}
#ostechpoint>ul>li{
    position: relative;
    width: calc((384/1440)*100vw);
    height: calc((220/1440)*100vw);
    padding-top: calc((40/1440)*100vw);
    font-weight: bold;
    font-size: calc((24/1440)*100vw);
    background-color: #DBEBFF;
    border-radius: calc((30/1440)*100vw);
    z-index: 0;
}
#ostechpoint>ul>li:nth-child(3){
    line-height: 2em;
}
#ostechpoint>ul>li::before{
    content: "";
    position: absolute;
    width: calc((314/1440)*100vw);
    height: 2px;
    background-image: linear-gradient(to right, #002F7B, #002F7B 4px, transparent 4px, transparent 8px);
    background-size: 8px 2px;
    background-repeat: repeat-x;
    top:calc((82/1440)*100vw);
    left:50%;
    transform: translateX(-50%);
    z-index: 1;
}
#ostechpoint>ul>li:nth-child(3):before{
    content: none;
}
#ostechpoint>ul>li::after{
    content: "";
    position: absolute;
    width: calc((130/1440)*100vw);
    height: calc((96/1440)*100vw);
    background-image: url(../image/b01.png);
    background-repeat: no-repeat;
    background-size: contain;
    right: calc((30/1440)*100vw);
    bottom: calc((30/1440)*100vw);
    z-index: -1;
}
#ostechpoint>ul>li:nth-child(2):after{
    width: calc((100/1440)*100vw);
    height: calc((105/1440)*100vw);
    background-image: url(../image/b02.png);
}
#ostechpoint>ul>li:nth-child(3):after{
    width: calc((80/1440)*100vw);
    height: calc((100/1440)*100vw);
    background-image: url(../image/b03.png);
}
#ostechpoint>ul>li:nth-child(4):after{
    width: calc((112/1440)*100vw);
    height: calc((100/1440)*100vw);
    background-image: url(../image/b04.png);
}
#ostechpoint>ul>li:nth-child(5):after{
    width: calc((106/1440)*100vw);
    height: calc((109/1440)*100vw);
    background-image: url(../image/b05.png);
}
#ostechpoint>ul>li:nth-child(6):after{
    width: calc((108/1440)*100vw);
    height: calc((105/1440)*100vw);
    background-image: url(../image/b06.png);
}
#ostechpoint>ul>li>p{
    z-index: 1;
    font-size: calc((24/1440)*100vw);
}
#ostechpoint .red_fwb{
    color: #D3174F;
    font-size: calc((64/1440)*100vw);
    display: inline-block;
}
#ostechpoint>ul>li>p.red_fwb{
    margin-top: calc((40/1440)*100vw);
    font-size: calc((36/1440)*100vw);
}
#ostechpoint .ostechpoint_title{
    margin-bottom: calc((70/1440)*100vw);
}
#ostechpoint .ostechpoint_title.threeline{
    margin-bottom: calc((60/1440)*100vw);
}
#ostechpoint .attention{
    margin-top: calc((15/1440)*100vw);
    font-weight: normal;
    font-size: calc((20/1440)*100vw);
}
@media (max-width:1020px) {
    #ostechpoint .ostechpoint_title{
        margin-bottom: calc((40/1440)*100vw);
    }
    #ostechpoint .ostechpoint_title.threeline{
        margin-bottom: calc((50/1440)*100vw);
    }
    #ostechpoint .attention{
        margin-top: calc((10/1440)*100vw);
    }
}
@media (max-width:900px) {
    #ostechpoint .ostechpoint_title{
        margin-bottom: calc((40/1440)*100vw);
    }
    #ostechpoint .ostechpoint_title.threeline{
        margin-bottom: calc((30/1440)*100vw);
    }
    #ostechpoint .attention{
        margin-top: calc((5/1440)*100vw);
    }
    #ostechpoint>ul>li::before{
        top:calc((88/1440)*100vw);
    }
}
/*-------achievement------*/
#achievement{
    position: relative;
    margin-bottom: calc((180/1440)*100vw);
}
#achievement>h3{
    position: absolute;
    display: inline-block;
    font-size: calc((40 / 1440)* 100vw);
    background-color: #fff;
    padding: 0 calc((40 / 1440)* 100vw);
    top: calc((-20 / 1440)* 100vw);
    left: calc((150 / 1440)* 100vw);
}
#achievement>dl{
    text-align:justify;
    width: calc((1230 / 1440)* 100vw);
    margin: 0 auto;
    padding: calc((60 / 1440) * 100vw) calc((40 / 1440) * 100vw);
    border: solid #002F7B 4px;
    border-radius: calc((20 / 1440)* 100vw);
    box-sizing: border-box;
}
#achievement>dl:nth-child(1){
    padding-left: 0;
}
#achievement>dl>dt{
    margin-right: calc((20 / 1440)* 100vw);
    margin-bottom: calc((30 / 1440)* 100vw);
    padding: calc((10 / 1440) * 100vw) calc((35 / 1440) * 100vw);
    font-size: calc((20 / 1440)* 100vw);
    font-weight: bold;
    background-color: #DBEBFF;
    color: #2063AE;
    border-radius: calc((12 / 1440)* 100vw);
    display: inline-block;
}
#achievement>dl>dt:nth-last-child(-n+8){
    margin-bottom: 0;
}
#achievement>dl>dd{
    padding-right: calc((23 / 1440) * 100vw);
    font-size: calc((32 / 1440)* 100vw);
    font-weight: bold;
    color: #D3174F;
    display: inline-block;
}
#achievement>dl>dd:last-child{
    padding-right: 0;
}
/*-------voice-------*/
#voice{
    margin-bottom: calc((180/1440)*100vw);
}
#voice>h3{
    margin-bottom: calc((94/1440)*100vw);
    padding: 0 calc((115/1440)*100vw);
    font-weight: bold;
    font-size: calc((36/1440)*100vw);
    position: relative;
    display: inline-block;
}
#voice>h3::before, #voice>h3::after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: calc((100/1440)*100vw);
    height: 2px;
    background-color: #002F7B;
}
#voice>h3::before {
    left:0;
}
#voice>h3::after {
    right: 0;
}
#voice>ul>li>p{
    text-align: left;
    line-height: 1.5em;
    color: #000;
    font-size: calc((21/1440)*100vw);
}
#voice>ul>li>p.voice_title{
    color: #002F7B;
    line-height: 1.3em;
    font-size: calc((28/1440)*100vw);
    font-weight: bold;
    margin-bottom: calc((16/1440)*100vw);
}
#voice>ul>li>p>span.red_fwb{
    color: #D3174F;
    font-weight: bold;
}
#voice>ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: calc((70/1440)*100vw) calc((104/1440)*100vw);
}
#voice>ul>li{
    position: relative;
    width: calc((448/1440)*100vw);
    padding: calc((50/1440)*100vw) calc((46/1440)*100vw);
    background-color: #FFE6EF;
    border-radius: calc((16/1440)*100vw);
}
#voice>ul>li::after{
    content: "";
    position: absolute;
    width: calc((120/1440)*100vw);
    height: calc((146/1440)*100vw);
    background-image: url(../image/c01.png);
    background-size: contain;
    background-repeat: no-repeat;
    bottom: calc((-24/1440)*100vw);
    right: calc((-54/1440)*100vw);
}
#voice>ul>li:nth-child(2)::after{
    background-image: url(../image/c02.png);
}
#voice>ul>li:nth-child(3)::after{
    background-image: url(../image/c03.png);
}
#voice>ul>li:nth-child(4)::after{
    background-image: url(../image/c04.png);
}
/*-------process-------*/
#process{
    margin-bottom: calc((150/1440)*100vw);
}
#process>h3{
    margin-bottom: calc((94/1440)*100vw);
    padding: 0 calc((115/1440)*100vw);
    font-weight: bold;
    font-size: calc((36/1440)*100vw);
    position: relative;
    display: inline-block;
}
#process>h3::before, #process>h3::after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: calc((100/1440)*100vw);
    height: 2px;
    background-color: #002F7B;
}
#process>h3::before {
    left:0;
}
#process>h3::after {
    right: 0;
}
#process>ol{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 calc((58/1440)*100vw);
}
#process>ol>li{
    width: calc((164/1440)*100vw);
    position: relative;
    border: solid #002F7B 3px;
    border-radius: calc((20/1440)*100vw);
    padding: calc((50/1440)*100vw) calc((18/1440)*100vw);
}
#process>ol>li>div>p{
    color: #002F7B;
    font-size: calc((15/1440)*100vw);
    text-align: left;
    line-height: 1.5em;
}
#process>ol>li>div>p.process_title{
    text-align: center;
    font-weight: bold;
    font-size: calc((20/1440)*100vw);
    margin-bottom: calc((20/1440)*100vw);
}
#process>ol>li>img{
    width: calc((98/1440)*100vw);
    display: inline-block;
    margin-bottom: calc((20/1440)*100vw);
}
#process>ol>li::before{
    content: "";
    position: absolute;
    width: calc((70/1440)*100vw);
    height: calc((70/1440)*100vw);
    background-image: url(../image/f01.png);
    background-size: contain;
    background-repeat: no-repeat;
    top:  calc((-35/1440)*100vw);
    left: 50%;
    transform: translateX(-50%);
}
#process>ol>li:nth-child(2):before{
    background-image: url(../image/f02.png);
}
#process>ol>li:nth-child(3):before{
    background-image: url(../image/f03.png);
}
#process>ol>li:nth-child(4):before{
    background-image: url(../image/f04.png);
}
#process>ol>li:nth-child(5):before{
    background-image: url(../image/f05.png);
}
#process>ol>li::after{
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-top: calc((16/1440)*100vw) solid transparent;
    border-bottom: calc((16/1440)*100vw) solid transparent;
    border-left: calc((20/1440)*100vw) solid #D9D9D9;
    top: 50%;
    right: calc((-40/1440)*100vw);
    transform: translateY(-50%);
}
#process>ol>li:last-child:after{
    content: none;
}

/*-------fade up anime-------*/
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 0.5s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/*-------footer-------*/
footer {
    background-color: #fff;
    color: #171B2E;
    line-height: calc((20/1440)*100vw);
    font-size: calc((14/1440)*100vw);
    padding: calc((60/1440)*100vw) calc((112/1440)*100vw) calc((20/1440)*100vw) calc((98/1440)*100vw);
}
.footer_logo_nav{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: calc((20/1440)*100vw);
}
.footer_menu>ul{
    justify-content: space-between;
}
.footer_menu>ul>li>a{
    font-size: calc((14/1440)*100vw);
    font-weight: bold;
}
.footer_policy {
    margin-top: max((35/1440)*100vw,20px);
}
.footer_policy>ul {
    margin: 0 auto;
    display: flex;
    gap: 0 calc((36/1440)*100vw);
    justify-content: center;
}
.footer_policy a {
    font-size: calc((12/1440)*100vw);
    color: #171B2E;
    display: inline-block;
    transition: all .3s ease 0s;
    font-weight: normal;
}
.footer_policy li a:hover {
    cursor: pointer;
    color: #066FC8;
    transform: scale(1, 1);
}
.footer_logo_nav img {
    width: calc((300/1440)*100vw);
}
.footer_add_policy {
    display: flex;
    justify-content: space-between;
}
.address {
    margin-top: calc((30/1440)*100vw);
}
.address_title {
    font-size: calc((16/1440)*100vw);
    font-weight: bold;
}
.address_text {
    margin: calc((10/1440)*100vw) 0 0;
}
.footer_copyright{
    text-align: center;
}
.footer_copyright-txt {
    line-height: 1;
    font-size: calc((10/1440)*100vw);
}

/* 240827追加 */
.pc_menu .button_box { display: flex; }
.index_button_box { display: flex; width: calc((1240/1440)*100vw); margin: 0 auto;}