@charset "UTF-8";
/* Scss Document */
.flex_30 {
    width: 30%;
}
.flex_31 {
    width: 31%;
}
.flex_32 {
    width: 32%;
}
.flex_33 {
    width: 33%;
}
.flex_34 {
    width: 34%;
}
.flex_35 {
    width: 35%;
}
.flex_36 {
    width: 36%;
}
.flex_37 {
    width: 37%;
}
.flex_38 {
    width: 38%;
}
.flex_39 {
    width: 39%;
}
.flex_40 {
    width: 40%;
}
.flex_41 {
    width: 41%;
}
.flex_42 {
    width: 42%;
}
.flex_43 {
    width: 43%;
}
.flex_44 {
    width: 44%;
}
.flex_45 {
    width: 45%;
}
.flex_46 {
    width: 46%;
}
.flex_47 {
    width: 47%;
}
.flex_48 {
    width: 48%;
}
.flex_49 {
    width: 49%;
}
.flex_50 {
    width: 50%;
}
.flex_51 {
    width: 51%;
}
.flex_52 {
    width: 52%;
}
.flex_53 {
    width: 53%;
}
.flex_54 {
    width: 54%;
}
.flex_55 {
    width: 55%;
}
.flex_56 {
    width: 56%;
}
.flex_57 {
    width: 57%;
}
.flex_58 {
    width: 58%;
}
.flex_59 {
    width: 59%;
}
.flex_60 {
    width: 60%;
}
.flex_61 {
    width: 61%;
}
.flex_62 {
    width: 62%;
}
.flex_63 {
    width: 63%;
}
.flex_64 {
    width: 64%;
}
.flex_65 {
    width: 65%;
}
.flex_66 {
    width: 66%;
}
.flex_67 {
    width: 67%;
}
.flex_68 {
    width: 68%;
}
.flex_69 {
    width: 69%;
}
.flex_70 {
    width: 70%;
}
.padding100 {
    padding-top: 100px;
    padding-bottom: 100px;
}
.padding110 {
    padding-top: 110px;
    padding-bottom: 110px;
}
.padding120 {
    padding-top: 120px;
    padding-bottom: 120px;
}
.padding130 {
    padding-top: 130px;
    padding-bottom: 130px;
}
.padding140 {
    padding-top: 140px;
    padding-bottom: 140px;
}
.padding150 {
    padding-top: 150px;
    padding-bottom: 150px;
}
.padding160 {
    padding-top: 160px;
    padding-bottom: 160px;
}
.padding170 {
    padding-top: 170px;
    padding-bottom: 170px;
}
.padding180 {
    padding-top: 180px;
    padding-bottom: 180px;
}
.padding190 {
    padding-top: 190px;
    padding-bottom: 190px;
}
.padding200 {
    padding-top: 200px;
    padding-bottom: 200px;
}
.padding210 {
    padding-top: 210px;
    padding-bottom: 210px;
}
.padding220 {
    padding-top: 220px;
    padding-bottom: 220px;
}
.padding230 {
    padding-top: 230px;
    padding-bottom: 230px;
}
.padding240 {
    padding-top: 240px;
    padding-bottom: 240px;
}
.padding250 {
    padding-top: 250px;
    padding-bottom: 250px;
}
.padding260 {
    padding-top: 260px;
    padding-bottom: 260px;
}
.padding270 {
    padding-top: 270px;
    padding-bottom: 270px;
}
.padding280 {
    padding-top: 280px;
    padding-bottom: 280px;
}
.padding290 {
    padding-top: 290px;
    padding-bottom: 290px;
}
.margin100 {
    margin-top: 100px;
    margin-bottom: 100px;
}
.margin110 {
    margin-top: 110px;
    margin-bottom: 110px;
}
.margin120 {
    margin-top: 120px;
    margin-bottom: 120px;
}
.margin130 {
    margin-top: 130px;
    margin-bottom: 130px;
}
.margin140 {
    margin-top: 140px;
    margin-bottom: 140px;
}
.margin150 {
    margin-top: 150px;
    margin-bottom: 150px;
}
.margin160 {
    margin-top: 160px;
    margin-bottom: 160px;
}
.margin170 {
    margin-top: 170px;
    margin-bottom: 170px;
}
.margin180 {
    margin-top: 180px;
    margin-bottom: 180px;
}
.margin190 {
    margin-top: 190px;
    margin-bottom: 190px;
}
.margin200 {
    margin-top: 200px;
    margin-bottom: 200px;
}
.margin210 {
    margin-top: 210px;
    margin-bottom: 210px;
}
.margin220 {
    margin-top: 220px;
    margin-bottom: 220px;
}
.margin230 {
    margin-top: 230px;
    margin-bottom: 230px;
}
.margin240 {
    margin-top: 240px;
    margin-bottom: 240px;
}
.margin250 {
    margin-top: 250px;
    margin-bottom: 250px;
}
.margin260 {
    margin-top: 260px;
    margin-bottom: 260px;
}
.margin270 {
    margin-top: 270px;
    margin-bottom: 270px;
}
.margin280 {
    margin-top: 280px;
    margin-bottom: 280px;
}
.margin290 {
    margin-top: 290px;
    margin-bottom: 290px;
}
.pt-120 {
    padding-top: 120px;
}
.pt-130 {
    padding-top: 130px;
}
.pt-140 {
    padding-top: 140px;
}
.pt-150 {
    padding-top: 150px;
}
.pt-160 {
    padding-top: 160px;
}
.pt-170 {
    padding-top: 170px;
}
.pt-180 {
    padding-top: 180px;
}
.pt-190 {
    padding-top: 190px;
}
.pt-200 {
    padding-top: 200px;
}
.pt-210 {
    padding-top: 210px;
}
.pt-220 {
    padding-top: 220px;
}
.pt-230 {
    padding-top: 230px;
}
.pt-240 {
    padding-top: 240px;
}
.pt-250 {
    padding-top: 250px;
}
.pt-260 {
    padding-top: 260px;
}
.pt-270 {
    padding-top: 270px;
}
.pt-280 {
    padding-top: 280px;
}
.pt-290 {
    padding-top: 290px;
}
.pb-120 {
    padding-bottom: 120px;
}
.pb-130 {
    padding-bottom: 130px;
}
.pb-140 {
    padding-bottom: 140px;
}
.pb-150 {
    padding-bottom: 150px;
}
.pb-160 {
    padding-bottom: 160px;
}
.pb-170 {
    padding-bottom: 170px;
}
.pb-180 {
    padding-bottom: 180px;
}
.pb-190 {
    padding-bottom: 190px;
}
.pb-200 {
    padding-bottom: 200px;
}
.pb-210 {
    padding-bottom: 210px;
}
.pb-220 {
    padding-bottom: 220px;
}
.pb-230 {
    padding-bottom: 230px;
}
.pb-240 {
    padding-bottom: 240px;
}
.pb-250 {
    padding-bottom: 250px;
}
.pb-260 {
    padding-bottom: 260px;
}
.pb-270 {
    padding-bottom: 270px;
}
.pb-280 {
    padding-bottom: 280px;
}
.pb-290 {
    padding-bottom: 290px;
}
.mt-120 {
    margin-top: 120px;
}
.mt-130 {
    margin-top: 130px;
}
.mt-140 {
    margin-top: 140px;
}
.mt-150 {
    margin-top: 150px;
}
.mt-160 {
    margin-top: 160px;
}
.mt-170 {
    margin-top: 170px;
}
.mt-180 {
    margin-top: 180px;
}
.mt-190 {
    margin-top: 190px;
}
.mt-200 {
    margin-top: 200px;
}
.mt-210 {
    margin-top: 210px;
}
.mt-220 {
    margin-top: 220px;
}
.mt-230 {
    margin-top: 230px;
}
.mt-240 {
    margin-top: 240px;
}
.mt-250 {
    margin-top: 250px;
}
.mt-260 {
    margin-top: 260px;
}
.mt-270 {
    margin-top: 270px;
}
.mt-280 {
    margin-top: 280px;
}
.mt-290 {
    margin-top: 290px;
}
.mb-120 {
    margin-bottom: 120px;
}
.mb-130 {
    margin-bottom: 130px;
}
.mb-140 {
    margin-bottom: 140px;
}
.mb-150 {
    margin-bottom: 150px;
}
.mb-160 {
    margin-bottom: 160px;
}
.mb-170 {
    margin-bottom: 170px;
}
.mb-180 {
    margin-bottom: 180px;
}
.mb-190 {
    margin-bottom: 190px;
}
.mb-200 {
    margin-bottom: 200px;
}
.mb-210 {
    margin-bottom: 210px;
}
.mb-220 {
    margin-bottom: 220px;
}
.mb-230 {
    margin-bottom: 230px;
}
.mb-240 {
    margin-bottom: 240px;
}
.mb-250 {
    margin-bottom: 250px;
}
.mb-260 {
    margin-bottom: 260px;
}
.mb-270 {
    margin-bottom: 270px;
}
.mb-280 {
    margin-bottom: 280px;
}
.mb-290 {
    margin-bottom: 290px;
}
* {
    text-decoration: none !important;
}

.moviePopOpen {
	cursor: pointer;
}

#moviePopUp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999999;
	background-color: rgba(0,0,0,0.47);
	display: flex;
	align-items: center;
	justify-content: center;
}
.movie_cont {
	position: relative;
	width: 90%;
	max-width: 900px;
}
.pop_movie {
    position: relative;
}
.pop_movie:before {
    content:"";
    display: block;
    padding-top: 56.25%;
}
.pop_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*******************/
.midashi45 {
    font-size: 45px;
}
.midashi42 {
    font-size: 42px;
}
.midashi34 {
    font-size: 34px;
}
.logo {
    position: absolute;
    top: 50px;
    left: 60px;
    z-index: 600;
}
.top_main {
    position: relative;
    margin-bottom: 110px;
}
.top_main, #fade1, #fade2, #fade3 {
    height: 100vh;
}
#fade1 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/fade3.webp") 50% 0/cover no-repeat;
}
#fade2 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/fade1.webp") 50% 0/cover no-repeat;
}
#fade3 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/new_fade3.webp") 50% 0/cover no-repeat;
}
.main_logo {
    width: calc(100% - 240px);
    position: absolute;
    left: 0;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    mix-blend-mode: overlay;
}
.sdgs_banner {
    position: absolute;
    left: 5%;
    top: 50%;
    transform: translateY(95%);
    z-index: 11;
}
.sdgs_banner img {
    width: 100%;
    max-width: 270px;
    opacity: 0.95;
}
/**********/
.side_bar {
    position: fixed;
    right: 0;
    top: 0;
    width: 240px;
    height: 100vh;
    display: flex;
    align-items: flex-end;
    background-color: rgba(255, 255, 255, 0.74);
    border-left: 1px solid #c9e1f2;
    z-index: 999;
}
.cy_nav {
    margin-bottom: 80px;
}
.cy_nav li {
    margin: 20px 0;
    padding: 0 30px;
    font-weight: bold;
}
.cy_nav a {
    color: #065084;
    font-size: 17px;
    position: relative;
}
.cy_nav a:after {
    content: "";
    border-bottom: 1px solid #065084;
    position: absolute;
    left: 0;
    bottom: -5px;
    width: 0;
    transition: 0.3s ease-in-out;
}
.cy_nav a:hover:after {
    width: 100%;
}
.side_banner img {
    width: 100%;
    height: auto;
}
/******************/
.top_bg1 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top1.webp") 50% 0/1920px 100% no-repeat;
    width: 100%;
    height: 1292px;
    padding-top: 230px;
    position: relative;
}
.pr260 {
    padding-right: 260px;
}
.pr_240 {
    padding-right: 240px;
}
.flex_end {
    padding: 0 20px;
    display: flex;
    justify-content: flex-end;
    position: absolute;
    top: 20px;
    right: 245px
}
.color {
    color: #065084;
}
/*******************/
.af_icon {
    position: relative;
}
.af_icon:after {
    content: "";
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top2.webp") left 0/195px 258px repeat;
    width: 100%;
    max-width: 1170px;
    height: 516px;
    position: absolute;
    right: 0;
    top: 0;
}
.ver_midashi {
    writing-mode: vertical-rl;
    display: flex;
    align-items: flex-end;
}
.top_flex {
    display: flex;
    align-items: flex-end;
}
.top_right {
    width: 35%;
    position: relative;
    z-index: 100;
}
.top_calc {
    width: calc(100% + 150px);
    margin-left: -150px;
}
.top_calc.calc_r {
    margin-left: auto;
    margin-right: -150px;
    max-width: 590px;
    padding-left: 14px;
}
.top_num {
    position: absolute;
    top: -80px;
    left: -70px;
    font-size: 200px;
    line-height: 0em;
}
.num1 {
    color: #66cdff;
    opacity: 0.8;
}
.top_num.num2 {
    color: #daebf6;
    opacity: 0.8;
    left: auto;
    right: 530px;
}
.num3 {
    color: #a5822c;
    opacity: 0.4;
}
.bg_span {
    background-color: #065084;
    color: #FFF;
    padding: 15px 10px;
    display: inline-block;
    margin: 5px 0;
    letter-spacing: 0.15em;
    line-height: 1.2em;
}
.bg_text {
    background-color: #FFF;
    padding: 60px 30px 70px 60px;
}
.top_left {
    width: 65%;
}
.top_bg2 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top3.webp") 50% 0/cover no-repeat;
    height: 100%;
    min-height: 770px;
}
/*********/
.midashi_r {
    text-align: right;
}
.pl260 {
    padding-left: 200px;
}
.bg_text2 {
    background-color: #FFF;
    padding: 60px 60px 70px 0;
}
.top_bg3 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top4.webp") 50% 0/cover no-repeat;
    height: 100%;
    min-height: 770px;
}
.top_bg4 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top5.webp") 50% 0/cover no-repeat;
    height: 100%;
    min-height: 770px;
}
/************/
.af_icon.af_icon_l:after {
    right: auto;
    left: 0;
}
.ver_midashi.var_right {
    align-items: flex-start;
}
.top_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.top_list li {
    width: 46%;
    margin: 30px 0;
}
.top_list h3 {
    font-size: 34px;
    margin-top: -65px;
}
.top_list h3 span {
    display: inline-block;
    color: #065084;
    background-color: #FFF;
    padding: 7px 35px 7px 15px;
}
.top_list p {
    margin-top: 25px;
    line-height: 2em;
    padding: 0 15px;
    font-weight: bold;
}
/***************/
.more.more_l .button {
    margin-left: 0;
}
.more .button {
    display: block;
    max-width: 260px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
    -webkit-transform: translatez(0);
    transform: translatez(0);
    text-decoration: none;
    box-sizing: border-box;
    font-size: 18px;
    padding: 15px 0;
    text-align: center;
}
.more .button:hover, .more .button:focus {
    text-decoration: none;
}
.more .sweepButton {
    border: 2px solid #065084;
    color: #f0f0f0;
    background: #065084;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
}
.more .sweepButton .gradient {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 300%;
    height: 100%;
    bottom: auto;
    margin: auto;
    z-index: -1;
    background: black;
    background: linear-gradient(90deg, #065185 0%, #0096ff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000', GradientType=1);
    -webkit-transition: all 0s ease-out 0s;
    transition: all 0s ease-out 0s;
    -webkit-transform: translateX(-35%);
    -moz-transform: translateX(-35%);
    transform: translateX(-35%);
}
.more .sweepButton:hover, .more .sweepButton:focus {
    border: 2px solid #0096ff;
    color: #f0f0f0;
    -webkit-transition: all 0.3s ease-out 0.1s;
    transition: all 0.3s ease-out 0.1s;
}
.more .sweepButton:hover .gradient, .more .sweepButton:focus .gradient {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: all 0.8s ease-out 0s;
    transition: all 0.8s ease-out 0s;
}
/************************/
.top_flex2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.top_right2 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top12.webp") 50% 0/cover no-repeat;
    width: 75%;
    height: 640px;
}
.top_left2 {
    width: 18%;
}
.ver_midashi2 {
    writing-mode: vertical-rl;
    display: flex;
    align-items: flex-start;
    width: 100%;
}
.w1440_right {
    width: 94%;
    max-width: 1440px;
    margin-left: auto;
}
/************/
.top_bg5 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top13.webp") left 0/136px 180px repeat;
    padding: 130px 0 125px;
}
.bg_flex {
    background-color: #FFF;
    padding: 50px 40px 50px 0;
    display: flex;
    justify-content: space-between;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
}
.bg_left {
    width: 120px;
    writing-mode: vertical-rl;
    color: #065084;
    font-weight: bold;
}
.bg_right {
    width: calc(100% - 160px);
}
.span_p {
    background-color: #d9eaf6;
    color: #065084;
    padding: 5px 10px 7px;
    display: inline-block;
    font-size: 22px;
    font-weight: bold;
}
/**************/
.center {
    text-align: center;
}
.item_list {
    display: flex;
    flex-wrap: wrap;
}
.item_list li {
    width: 29.33%;
    margin: 30px 2%;
}
.item_list a {
    display: block;
    color: #1c1c1c;
}
.item_list .img100 {
    overflow: hidden;
}
.item_list .img100 img {
    transition: 0.3s ease-in-out;
}
.item_list a:hover img {
    transform: scale(1.1);
}
.item_p {
    text-align: center;
    margin-top: 15px;
    font-size: 20px;
}
/**************/
.af_icon2 {
    position: relative;
}
.af_icon2:after {
    content: "";
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top_bg.webp") left 0/180px 237px repeat;
    width: 100%;
    max-width: 100%;
    /* height: 382px; */
    height: 474px;
    position: absolute;
    right: 0;
    top: 0;
}
.news {
    display: flex;
    flex-wrap: wrap;
}
.news li {
    width: 23%;
    margin: 30px 1%;
}
.news a {
    color: #1c1c1c;
}
.news .img100 {
    overflow: hidden;
}
.news .img100 img {
    transition: 0.3s ease-in-out;
}
.news a:hover img {
    transform: scale(1.1);
}
.n_title {
    margin-top: 10px;
}
.n_time {
    margin-top: 10px;
    text-align: right;
    color: #065084;
}
/*****************/
.top_bg6 {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top21.webp") 50% 0/cover no-repeat;
    height: 1021px;
    padding-top: 100px;
}
.rec_box {
    padding: 135px 85px;
    background-color: #FFF;
    position: relative;
    width: 100%;
    max-width: 780px;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1);
}
.rec_box:after {
    content: "";
    border: 1px solid #065084;
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    transform: translate(-50%, -50%);
}
/***************/
.cy_footer {
    padding: 140px 0;
    color: #065084;
}
.award-banner_box img {
    width: 100%;
    max-width: 300px;
    box-shadow: 0px 0px 5px #aaa;
}
.award-banner_box a:hover {
    opacity: 0.8;
}
.award-banner_box {
    display: flex;
    gap: 40px;
}
/**************************************************************

    お知らせ

**************************************************************/
.main_in {
    background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/company1.webp") 50% 50%/cover no-repeat;
}
.main_size {
    height: 450px;
    position: relative;
}
.title_in {
    padding-right: 240px;
    position: absolute;
    left: 60px;
    bottom: 60px;
    font-size: 40px;
    color: #FFF;
    font-weight: bold;
}
.title_in span {
    background-color: #065084;
    padding: 5px 20px;
}
.footer_in {
    border-top: 1px solid #c9e1f2;
}
/* PC用
------------------------------------------------------------*/
@media only screen and (max-width: 1200px) {
    .news li {
        width: 31.33%;
        margin: 30px 1%;
    }
    .news.top_news li:nth-child(4) {
        display: none;
    }
}
@media only screen and (max-width: 1024px) {
    .padding100 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding110 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding120 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding130 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding140 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding150 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding160 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding170 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding180 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding190 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding200 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding210 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding220 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding230 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding240 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding250 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding260 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding270 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding280 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding290 {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .margin100 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin110 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin120 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin130 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin140 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin150 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin160 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin170 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin180 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin190 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin200 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin210 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin220 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin230 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin240 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin250 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin260 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin270 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin280 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .margin290 {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .pt-120 {
        padding-top: 80px;
    }
    .pt-130 {
        padding-top: 80px;
    }
    .pt-140 {
        padding-top: 80px;
    }
    .pt-150 {
        padding-top: 80px;
    }
    .pt-160 {
        padding-top: 80px;
    }
    .pt-170 {
        padding-top: 80px;
    }
    .pt-180 {
        padding-top: 80px;
    }
    .pt-190 {
        padding-top: 80px;
    }
    .pt-200 {
        padding-top: 80px;
    }
    .pt-210 {
        padding-top: 80px;
    }
    .pt-220 {
        padding-top: 80px;
    }
    .pt-230 {
        padding-top: 80px;
    }
    .pt-240 {
        padding-top: 80px;
    }
    .pt-250 {
        padding-top: 80px;
    }
    .pt-260 {
        padding-top: 80px;
    }
    .pt-270 {
        padding-top: 80px;
    }
    .pt-280 {
        padding-top: 80px;
    }
    .pt-290 {
        padding-top: 80px;
    }
    .pb-120 {
        padding-bottom: 80px;
    }
    .pb-130 {
        padding-bottom: 80px;
    }
    .pb-140 {
        padding-bottom: 80px;
    }
    .pb-150 {
        padding-bottom: 80px;
    }
    .pb-160 {
        padding-bottom: 80px;
    }
    .pb-170 {
        padding-bottom: 80px;
    }
    .pb-180 {
        padding-bottom: 80px;
    }
    .pb-190 {
        padding-bottom: 80px;
    }
    .pb-200 {
        padding-bottom: 80px;
    }
    .pb-210 {
        padding-bottom: 80px;
    }
    .pb-220 {
        padding-bottom: 80px;
    }
    .pb-230 {
        padding-bottom: 80px;
    }
    .pb-240 {
        padding-bottom: 80px;
    }
    .pb-250 {
        padding-bottom: 80px;
    }
    .pb-260 {
        padding-bottom: 80px;
    }
    .pb-270 {
        padding-bottom: 80px;
    }
    .pb-280 {
        padding-bottom: 80px;
    }
    .pb-290 {
        padding-bottom: 80px;
    }
    .mt-120 {
        margin-top: 80px;
    }
    .mt-130 {
        margin-top: 80px;
    }
    .mt-140 {
        margin-top: 80px;
    }
    .mt-150 {
        margin-top: 80px;
    }
    .mt-160 {
        margin-top: 80px;
    }
    .mt-170 {
        margin-top: 80px;
    }
    .mt-180 {
        margin-top: 80px;
    }
    .mt-190 {
        margin-top: 80px;
    }
    .mt-200 {
        margin-top: 80px;
    }
    .mt-210 {
        margin-top: 80px;
    }
    .mt-220 {
        margin-top: 80px;
    }
    .mt-230 {
        margin-top: 80px;
    }
    .mt-240 {
        margin-top: 80px;
    }
    .mt-250 {
        margin-top: 80px;
    }
    .mt-260 {
        margin-top: 80px;
    }
    .mt-270 {
        margin-top: 80px;
    }
    .mt-280 {
        margin-top: 80px;
    }
    .mt-290 {
        margin-top: 80px;
    }
    .mb-120 {
        margin-bottom: 80px;
    }
    .mb-130 {
        margin-bottom: 80px;
    }
    .mb-140 {
        margin-bottom: 80px;
    }
    .mb-150 {
        margin-bottom: 80px;
    }
    .mb-160 {
        margin-bottom: 80px;
    }
    .mb-170 {
        margin-bottom: 80px;
    }
    .mb-180 {
        margin-bottom: 80px;
    }
    .mb-190 {
        margin-bottom: 80px;
    }
    .mb-200 {
        margin-bottom: 80px;
    }
    .mb-210 {
        margin-bottom: 80px;
    }
    .mb-220 {
        margin-bottom: 80px;
    }
    .mb-230 {
        margin-bottom: 80px;
    }
    .mb-240 {
        margin-bottom: 80px;
    }
    .mb-250 {
        margin-bottom: 80px;
    }
    .mb-260 {
        margin-bottom: 80px;
    }
    .mb-270 {
        margin-bottom: 80px;
    }
    .mb-280 {
        margin-bottom: 80px;
    }
    .mb-290 {
        margin-bottom: 80px;
    }
    /*******************/
    .top_main {
        margin-bottom: 145px;
    }
    .flex_end {
        top: -55px;
        right: 0;
    }
    .midashi45 {
        font-size: 40px;
    }
    .midashi42 {
        font-size: 36px;
    }
    .midashi34 {
        font-size: 28px;
    }
    .logo {
        top: 30px;
        left: 30px;
    }
    .top_main, #fade1, #fade2, #fade3 {
        height: 700px;
    }
    .main_logo {
        width: 100%;
    }
    .main_logo img {
        width: 300px;
        height: auto;
    }
    .sdgs_banner {
        left: 5%;
        transform: translateY(105%);
    }
    .sdgs_banner img {
        max-width: 210px;
    }
    /**********/
    .side_bar {
        display: none;
    }
    /******************/
    .top_bg1 {
        background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top1.webp") 50% 0/1024px 100% no-repeat;
        height: 689px;
        padding-top: 100px;
        margin-top: 40px;
        top: -36px;
        right: 0;
    }
    .pr260 {
        padding-right: 0;
    }
    .pr_240 {
        padding-right: 0;
    }
    /*******************/
    .top_calc {
        width: calc(100% + 200px);
        margin-left: -200px;
    }
    .top_calc.calc_r {
        margin-left: auto;
        margin-right: -200px;
        max-width: 590px;
        padding-left: 14px;
    }
    .top_num.num2 {
        color: #daebf6;
        opacity: 0.8;
        left: 40px;
        top: -100px;
        right: auto;
    }
    /************/
    .ver_midashi.var_right {
        padding-right: 80px;
    }
    .top_list h3 {
        font-size: 26px;
        margin-top: -45px;
    }
    /**************************************************************

    お知らせ

**************************************************************/
    .title_in {
        padding-right: 0;
    }
}
@media only screen and (max-width: 740px) {
    .flex_30 {
        width: 100%;
    }
    .flex_31 {
        width: 100%;
    }
    .flex_32 {
        width: 100%;
    }
    .flex_33 {
        width: 100%;
    }
    .flex_34 {
        width: 100%;
    }
    .flex_35 {
        width: 100%;
    }
    .flex_36 {
        width: 100%;
    }
    .flex_37 {
        width: 100%;
    }
    .flex_38 {
        width: 100%;
    }
    .flex_39 {
        width: 100%;
    }
    .flex_40 {
        width: 100%;
    }
    .flex_41 {
        width: 100%;
    }
    .flex_42 {
        width: 100%;
    }
    .flex_43 {
        width: 100%;
    }
    .flex_44 {
        width: 100%;
    }
    .flex_45 {
        width: 100%;
    }
    .flex_46 {
        width: 100%;
    }
    .flex_47 {
        width: 100%;
    }
    .flex_48 {
        width: 100%;
    }
    .flex_49 {
        width: 100%;
    }
    .flex_50 {
        width: 100%;
    }
    .flex_51 {
        width: 100%;
    }
    .flex_52 {
        width: 100%;
    }
    .flex_53 {
        width: 100%;
    }
    .flex_54 {
        width: 100%;
    }
    .flex_55 {
        width: 100%;
    }
    .flex_56 {
        width: 100%;
    }
    .flex_57 {
        width: 100%;
    }
    .flex_58 {
        width: 100%;
    }
    .flex_59 {
        width: 100%;
    }
    .flex_60 {
        width: 100%;
    }
    .flex_61 {
        width: 100%;
    }
    .flex_62 {
        width: 100%;
    }
    .flex_63 {
        width: 100%;
    }
    .flex_64 {
        width: 100%;
    }
    .flex_65 {
        width: 100%;
    }
    .flex_66 {
        width: 100%;
    }
    .flex_67 {
        width: 100%;
    }
    .flex_68 {
        width: 100%;
    }
    .flex_69 {
        width: 100%;
    }
    .flex_70 {
        width: 100%;
    }
    .padding100 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding110 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding120 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding130 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding140 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding150 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding160 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding170 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding180 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding190 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding200 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding210 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding220 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding230 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding240 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding250 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding260 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding270 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding280 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding290 {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .margin100 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin110 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin120 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin130 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin140 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin150 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin160 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin170 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin180 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin190 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin200 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin210 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin220 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin230 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin240 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin250 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin260 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin270 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin280 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin290 {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .pt-120 {
        padding-top: 60px;
    }
    .pt-130 {
        padding-top: 60px;
    }
    .pt-140 {
        padding-top: 60px;
    }
    .pt-150 {
        padding-top: 60px;
    }
    .pt-160 {
        padding-top: 60px;
    }
    .pt-170 {
        padding-top: 60px;
    }
    .pt-180 {
        padding-top: 60px;
    }
    .pt-190 {
        padding-top: 60px;
    }
    .pt-200 {
        padding-top: 60px;
    }
    .pt-210 {
        padding-top: 60px;
    }
    .pt-220 {
        padding-top: 60px;
    }
    .pt-230 {
        padding-top: 60px;
    }
    .pt-240 {
        padding-top: 60px;
    }
    .pt-250 {
        padding-top: 60px;
    }
    .pt-260 {
        padding-top: 60px;
    }
    .pt-270 {
        padding-top: 60px;
    }
    .pt-280 {
        padding-top: 60px;
    }
    .pt-290 {
        padding-top: 60px;
    }
    .pb-120 {
        padding-bottom: 60px;
    }
    .pb-130 {
        padding-bottom: 60px;
    }
    .pb-140 {
        padding-bottom: 60px;
    }
    .pb-150 {
        padding-bottom: 60px;
    }
    .pb-160 {
        padding-bottom: 60px;
    }
    .pb-170 {
        padding-bottom: 60px;
    }
    .pb-180 {
        padding-bottom: 60px;
    }
    .pb-190 {
        padding-bottom: 60px;
    }
    .pb-200 {
        padding-bottom: 60px;
    }
    .pb-210 {
        padding-bottom: 60px;
    }
    .pb-220 {
        padding-bottom: 60px;
    }
    .pb-230 {
        padding-bottom: 60px;
    }
    .pb-240 {
        padding-bottom: 60px;
    }
    .pb-250 {
        padding-bottom: 60px;
    }
    .pb-260 {
        padding-bottom: 60px;
    }
    .pb-270 {
        padding-bottom: 60px;
    }
    .pb-280 {
        padding-bottom: 60px;
    }
    .pb-290 {
        padding-bottom: 60px;
    }
    .mt-120 {
        margin-top: 60px;
    }
    .mt-130 {
        margin-top: 60px;
    }
    .mt-140 {
        margin-top: 60px;
    }
    .mt-150 {
        margin-top: 60px;
    }
    .mt-160 {
        margin-top: 60px;
    }
    .mt-170 {
        margin-top: 60px;
    }
    .mt-180 {
        margin-top: 60px;
    }
    .mt-190 {
        margin-top: 60px;
    }
    .mt-200 {
        margin-top: 60px;
    }
    .mt-210 {
        margin-top: 60px;
    }
    .mt-220 {
        margin-top: 60px;
    }
    .mt-230 {
        margin-top: 60px;
    }
    .mt-240 {
        margin-top: 60px;
    }
    .mt-250 {
        margin-top: 60px;
    }
    .mt-260 {
        margin-top: 60px;
    }
    .mt-270 {
        margin-top: 60px;
    }
    .mt-280 {
        margin-top: 60px;
    }
    .mt-290 {
        margin-top: 60px;
    }
    .mb-120 {
        margin-bottom: 60px;
    }
    .mb-130 {
        margin-bottom: 60px;
    }
    .mb-140 {
        margin-bottom: 60px;
    }
    .mb-150 {
        margin-bottom: 60px;
    }
    .mb-160 {
        margin-bottom: 60px;
    }
    .mb-170 {
        margin-bottom: 60px;
    }
    .mb-180 {
        margin-bottom: 60px;
    }
    .mb-190 {
        margin-bottom: 60px;
    }
    .mb-200 {
        margin-bottom: 60px;
    }
    .mb-210 {
        margin-bottom: 60px;
    }
    .mb-220 {
        margin-bottom: 60px;
    }
    .mb-230 {
        margin-bottom: 60px;
    }
    .mb-240 {
        margin-bottom: 60px;
    }
    .mb-250 {
        margin-bottom: 60px;
    }
    .mb-260 {
        margin-bottom: 60px;
    }
    .mb-270 {
        margin-bottom: 60px;
    }
    .mb-280 {
        margin-bottom: 60px;
    }
    .mb-290 {
        margin-bottom: 60px;
    }
    /*******************/
    .top_main {
        margin-bottom: 150px;
    }
    .midashi45 {
        font-size: 24px;
    }
    .midashi42 {
        font-size: 20px;
    }
    .midashi34 {
        font-size: 18px;
    }
    .logo {
        top: 20px;
        left: 15px;
    }
    .logo img {
        width: 230px;
        height: auto;
    }
    .top_main, #fade1, #fade2, #fade3 {
        height: 500px;
    }
    .main_logo img {
        width: 200px;
        height: auto;
    }
    .sdgs_banner {
        top: unset;
        bottom: 5%;
        left: 50%;
        transform: translate(-50%, 0);
    }
    .sdgs_banner img {
        max-width: 130px;
    }
    /******************/
    .top_bg1 {
        background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top1.webp") 50% 0/740 100% no-repeat;
        height: 497px;
        padding-top: 0;
        margin-top: 100px;
    }
    .pr260 {
        padding-right: 0;
    }
    .pr_240 {
        padding-right: 0;
    }
    /*******************/
    .af_icon:after {
        background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top2.webp") 50% 0/120px 158px repeat;
        max-width: 1032px;
        height: 240px;
    }
    .ver_midashi {
        align-items: center;
    }
    .top_flex {
        display: block;
        width: 100%;
        margin: 0 auto;
    }
    .top_right {
        width: 94%;
        margin: 0 auto;
    }
    .top_calc {
        width: 100%;
        margin-left: auto;
    }
    .top_calc.calc_r {
        margin-right: auto;
        max-width: 100%;
        padding-left: 0;
    }
    .top_num {
        position: relative;
        top: 30px;
        left: 0;
        font-size: 120px;
        line-height: 0.5em;
        text-align: center;
        margin-bottom: 60px;
    }
    .num1 {
        color: #66cdff;
        opacity: 0.8;
    }
    .top_num.num2 {
        color: #66cdff;
        opacity: 0.8;
        left: 0;
        top: 30px;
        right: auto;
    }
    .num3 {
        color: #66cdff;
        opacity: 0.8;
    }
    .bg_midashi {
        text-align: center;
    }
    .bg_span {
        padding: 10px 10px;
        margin: 5px 0;
        letter-spacing: 0.15em;
    }
    .bg_span:nth-child(1) {
        font-size: 15px;
    }
    .bg_text {
        padding: 0;
    }
    .top_left {
        width: 100%;
        margin-top: 40px;
    }
    .top_bg2 {
        min-height: 300px;
    }
    /*********/
    .midashi_r {
        text-align: center;
    }
    .pl260 {
        padding-left: 0;
    }
    .bg_text2 {
        padding: 0;
    }
    .top_bg3 {
        min-height: 300px;
    }
    .top_bg4 {
        min-height: 300px;
    }
    /************/
    .ver_midashi.var_right {
        align-items: center;
        padding-right: 0;
    }
    .top_list {
        display: block;
    }
    .top_list li {
        width: 100%;
        margin: 50px 0;
    }
    .top_list li:first-child {
        margin-top: 0;
    }
    .top_list h3 {
        font-size: 20px;
        font-weight: bold;
        margin-top: -30px;
    }
    .top_list h3 span {
        padding: 7px 25px 7px 15px;
    }
    .top_list p {
        margin-top: 15px;
        line-height: 1.8em;
        padding: 0 15px;
        font-weight: 500;
    }
    /************************/
    .more .button {
        font-size: 14px;
        padding: 13px 0;
    }
    .top_flex2 {
        display: block;
    }
    .top_right2 {
        width: 100%;
        height: 300px;
    }
    .top_left2 {
        width: 100%;
    }
    .ver_midashi2 {
        display: block;
        text-align: center;
        align-items: center;
        margin-top: 50px;
        writing-mode: horizontal-tb;
    }
    .w1440_right {
        margin-right: auto;
    }
    /************/
    .top_bg5 {
        background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top13.webp") left 0/90px 118px repeat;
        padding: 60px 0;
    }
    .bg_flex {
        padding: 30px;
        display: block;
    }
    .bg_left {
        width: 100%;
        writing-mode: horizontal-tb;
    }
    .bg_right {
        width: 100%;
        margin-top: 20px;
    }
    .span_p {
        font-size: 16px;
    }
    /**************/
    .item_list {
        justify-content: space-between;
    }
    .item_list li {
        width: 49%;
        margin: 10px 0;
    }
    .item_p {
        margin-top: 15px;
        font-size: 15px;
    }
    /**************/
    .af_icon2:after {
        background: url("https://gigaplus.makeshop.jp/sanwa628/asset/images/top_bg.webp") left 0/100px 131px repeat;
        height: 200px;
    }
    .news {
        justify-content: space-between;
    }
    .news li {
        width: 48%;
        margin: 10px 0;
    }
    .news.top_news li:nth-child(4) {
        display: block;
    }
    .n_title {
        margin-top: 10px;
    }
    .n_time {
        margin-top: 10px;
        text-align: right;
        color: #065084;
    }
    /*****************/
    .top_bg6 {
        height: auto;
        padding-bottom: 60px;
        padding-top: 40px;
    }
    .rec_box {
        padding: 40px 30px;
    }
    .rec_box:after {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
    }
    /***************/
    .cy_footer {
        padding: 100px 0;
    }
    .f_logo img {
        width: 300px;
        height: auto;
    }
    .award-banner_box {
        flex-wrap: wrap;
    }
    /**************************************************************

    お知らせ

**************************************************************/
    .main_size {
        height: 250px;
    }
    .title_in {
        padding-right: 0;
        left: 20px;
        bottom: 20px;
        font-size: 26px;
    }
}
.sns_box {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 200px;
    margin-top: 30px;
}
.sns_box a {
    display: block;
}
/* スマートフォン 縦(ポートレート) */
.break {
    display: none;
}
.price_table {
    width: 100%;
    /*max-width: 300px;*/
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: center;
}
.price_table td {
    padding: 10px;
}
.postage_menu {
    width: 100%;
    max-width: 500px;
    margin: 20px 0 0 50px;
}
.postage_menu td {
    padding: 10px;
}
.postage_menu th {
    padding: 10px;
    text-align: center;
}
/*.d_none_pc {
  display: none;
}*/
@media (max-width:450px) {
    .break {
        display: block;
    }
    .guide_text_Adjustment {
        padding-right: 106px;
    }
    .faq_text_Adjustment {
        padding-right: 92px;
    }
}
@media (max-width:670px) {
    .postage_menu {
        width: 95%;
        max-width: 500px;
        margin: 20px 0 0 0px;
        margin-right: auto;
        margin-left: auto;
    }
    .price_table img {
        width: 100%;
        height: auto;
    }
    /*.d_none {
    display: none;
  }
  .d_none_pc {
    display: block;
  }*/
}
.price_table img {
    width: 50%;
    height: auto;
}