@charset "UTF-8";



/************************************************



	common



*************************************************/

body {

    font-family: "Noto Sans JP", "游ゴシック Medium", YuGothic, "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", sans-serif;

    font-size: 0.875rem;

    line-height: 2;

    color: #333;

    width: 100%;

    overflow-x: hidden;

}



_:-ms-input-placeholder,

:root body {

    font-family: メイリオ, Meiryo, "游ゴシック Medium", YuGothic, "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "Helvetica Neue", sans-serif;

}



@media screen and (max-width: 480px) {

    body {

        font-size: 90%;

    }



    body .link_btn {

        margin-left: 0;

    }

}



/* color */

/* text */

h2 {

    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";

    font-size: 2em;

}



h3 {

    margin-bottom: 1em;

    padding-bottom: .2em;

    font-size: 1.8em;

    font-weight: bold;

    color: #424242;

    border-bottom: 5px solid #c22733;

}



h4 {

    margin-bottom: 1em;

    font-size: 1.5em;

    color: #000;

    text-align: center;

}



h5 {

    color: #c22733;

    font-size: 1.1em;

}



h5.h5_bar {

    margin-bottom: 2em;

    padding: .5em 1em;

    color: #fff;

    background: #c22733;

}



p {

    margin-bottom: 1em;

}



.tC {

    text-align: center;

}



.tR {

    text-align: right;

}



.red {

    color: #c22733;

}



.dred {

    color: #c22733;

}



.blue {

    color: #00408d;

}



.underline {

    background: linear-gradient(transparent 60%, #e2ff00 60%);

}



strong {

    color: #000;

}



/* link */

a {

    color: #c22733;

    text-decoration: none;

    transition: all .7s;

}



a:hover {

    color: #555;

}



.link_btn {

    display: block;

    margin: 0 auto;

    padding: .6em;

    color: #fff;

    text-align: center;

    background: #555;

    border-radius: 2em;

}



.link_btn i {

    font-size: .8em;

}



.link_btn:hover {

    color: #fff;

    background: #c22733;

}



.link_btn:hover i {

    color: #fff;

}



a figure {

    transition: all .7s;

}



a figure:hover {

    opacity: .6;

}



img {

    max-width: 100%;

}



.pc_only {

    display: inline;

}



@media screen and (max-width: 480px) {

    .pc_only {

        display: none;

    }

}



.sp_only {

    display: none;

}



@media screen and (max-width: 480px) {

    .sp_only {

        display: inline;

    }

}



.no_link {

    pointer-events: none;

}



/************************************************



	header



*************************************************/

header {position: fixed;top: 0;left: 0;z-index: 100;padding: 0em 2em;width: calc(100% - 4em);background: #fff;box-shadow: 0px 0px 15px 0px #00000038;transition: all .7s;}



header>div {position: relative;display: flex;justify-content: space-between;margin: 0 auto;height: 60px;width: 100%;max-width: 1300px;align-items: center;}



header>div h1 {width: 140px;padding: 1em 0em;}



@media screen and (max-width: 480px) {

    header {

        padding: 1em;

        width: calc(100% - 2em);

    }



    header>div {

align-items: center;

margin: 1em auto;

height: 25px;

max-width: 100%;

}



    header>div h1 {

        width: 100px;

    }

}



/************************************************



	navi



*************************************************/

nav>ul {position: absolute;top: 0;right: 0;display: flex;flex-wrap: wrap;justify-content: space-between;width: 70%;align-items: flex-start;}

nav ul li.anniversary{
    background:#E7264A;
    height: 100%;
    padding: 0;
    width: 25%;
    overflow: hidden;
    position: relative;
    display: inline-block;
    border: none;
    font-weight: 700;
    cursor: pointer;
    transition: color .25s ease;
}

nav ul li.anniversary > a{ 
    position: relative; 
    z-index: 1; 
}

nav ul li.anniversary::before{
  content:"";
  position:absolute;
  inset:0;
  background:#ffffff;          
  transform: translateX(-100%);
  transition: transform .35s ease;
}

nav ul li.anniversary:hover::before,
nav ul li.anniversary:focus-visible::before{
  transform: translateX(0);  
}
nav ul li.anniversary:hover,
nav ul li.anniversary:focus-visible{
  color:#e7264a;
  outline:none;
}

nav ul li.anniversary a{
    color:#FFF;
    display: flex;
    align-items: center;
    padding: 15px 0px;
    column-gap: 5px;
    justify-content: center;
}

nav ul li.anniversary a:before{
    content:"";
    background-image:url(/ir/images/img-100logowhite.svg);
    background-repeat:no-repeat;
    background-size: cover;
    height: 30px;
    width: 48px;
    display: block;
    transition:0.5s;
}


nav ul li.anniversary:hover a{
    color: #e7264a;
}

nav ul li.anniversary:hover a:before{
    background-image:url(/ir/images/img-100logo.svg);
}


nav>ul>li {

width: 14%;

padding: 1em 0em;
}



nav>ul>li a {

    display: block;

    padding: .5em .8em;

    color: #000;

    font-weight: bold;

    text-align: center;

    line-height: 1.1;

}



nav>ul>li a i {

    font-size: .8em;

    color: #c22733;

}



nav>ul>li a:hover {

    color: #c22733;

}



nav>ul>li:first-child {

    display: none;

}



nav>ul>li ul li {

    height: 0;

    margin-top: 0;

    overflow: hidden;

    opacity: 0;

    width: 120%;

    background: #c22733;

    transition: all .2s ease-out;

}



nav>ul>li ul li a {

    padding: 1em;

    color: #fff;

    text-align: left;

}



nav>ul>li ul li a:hover {

    color: #555;

    background: #eaeaea;

}



nav>ul>li:hover ul li {

    height: auto;

    margin-top: 2px;

    opacity: 1;

    transition: all .2s ease-out;

}

.anniversary-logo{
    display:none;
}

@media screen and (max-width: 480px) {

    nav {

        position: fixed;

        top: -900px;

        left: 0;

        z-index: 50;

        display: none;

        flex-direction: column;

        justify-content: center;

        align-items: center;

        width: 100%;

        height: 100vh;

        background: #fff;

        transition: .5s ease-in-out;

        overflow: auto;

        -webkit-overflow-scrolling: touch;

    }



    nav>ul {

        position: relative;

        top: auto;

        right: auto;

        flex-direction: column;

        margin: 0 auto 10em;

        padding: 2em;

        width: calc(100% - 4em);

    }

    nav>ul>li {

        margin: 0;

        padding: 0 !important;

        width: 100%;

    }
    
nav ul li.anniversary {
    width: 100%;
    /* margin:10px 0; */
    position: relative;
    padding:0px;
    border: none;
}

    nav ul li.anniversary:hover {
    /* background: #E7264A; */
}
nav ul li.anniversary a {
    text-align:left;
    justify-content: flex-start;
    pointer-events: auto;
    padding: 0.5em 1em;
}
nav ul li.anniversary::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url(/images/icon-arrow-right-wh.svg);
    background-size: 100%;
    width: 7px;
    height: 12px;
    top: 50%;
    right: 3%;
    margin: auto;
    transform: translate(-50%, -50%);
}

    nav>ul>li br {

        display: none;

    }



    nav>ul>li>a {

        padding: 1em 0;

        font-size: 1.2em;

        border-bottom: 1px solid #c22733;

        pointer-events: none;

        text-align: left;

    }



    nav>ul>li>a i {

        display: none !important;

    }



    nav>ul>li ul {

        margin: 0 auto 1.5em;

        width: 100%;

    }



    nav>ul>li ul li {

        margin-bottom: .2em;

        width: 100%;

        height: auto;

        background: #fff;

        border-bottom: 1px solid #c22733;

        opacity: 1;

    }



    nav>ul>li ul li a {

        padding: 1.5em 1em;

        color: #c22733;

    }



    nav>ul>li:nth-child(4) ul {

        margin-bottom: 0;

    }



    nav>ul>li:first-child,

    nav>ul>li:nth-last-child(-n+1) {

        display: block;

    }



    nav>ul>li:first-child a,

    nav>ul>li:nth-last-child(-n+1) a {

        padding: 1em 0;

        pointer-events: all;

    }



    nav>ul>li:first-child a i,

    nav>ul>li:nth-last-child(-n+1) a i {

        display: inline-block !important;

        margin-left: 0;

    }



    nav>ul>li:hover ul li {

        height: auto;

        margin-top: 2px;

        opacity: 1;

        transition: all .2s ease-out;

    }



    nav.open {

        top: 0;

        display: block;

    }

}



@media screen and (max-width: 480px) {


.sp_menu{
    display:flex;
    width: 45%;
    column-gap: 20px;
    align-items: center;
    justify-content: flex-end;
}
    /* menu */

    .anniversary-logo{
        display: block;
        margin-right: 4rem;
        position: absolute;
    }

    .anniversary-logo img{
        height: 40px;
    }

    .global-menu-toggle {
        display: block;
        width: 3.5rem;
        height: 3.5rem;
        position: absolute;
        right: 0;
        z-index: 100;
        background: #c22733;
        cursor: pointer;
    }

    .global-menu-toggle span {

        position: absolute;

        left: 0;

        right: 0;

        display: block;

        margin: auto;

        height: 2px;

        background: #fff;

        width: 35%;

        transition: 0.5s ease-in-out;

    }



    .global-menu-toggle span:nth-child(1) {

        top: 18px;

    }



    .global-menu-toggle span:nth-child(2) {

        top: 26px;

    }



    .global-menu-toggle span:nth-child(3) {

        top: 35px;

    }



    .active.global-menu-toggle span:nth-child(1) {

        top: 28px;

        transform: rotate(135deg);

    }



    .active.global-menu-toggle span:nth-child(2) {

        display: none;

    }



    .active.global-menu-toggle span:nth-child(3) {

        top: 28px;

        transform: rotate(-135deg);

    }



    .global-menu-toggle.active span {

        background: #fff;

    }

}



.breadcrumb {

    margin-top: 6em;

    background: #c22733;

    font-size: .8em;

    color: #fff;

}



.breadcrumb ul {

    display: flex;

    margin: 0 auto;

    padding: .5em 0;

    width: calc(1000px + 8em);

}



.breadcrumb ul a {

    display: block;

    color: #fff;

}



.breadcrumb ul a:after {

    content: ">";

    margin: 0 1em;

}







@media screen and (max-width: 480px) {

    .breadcrumb {

        margin-top: 8em;

    }



    .breadcrumb ul {

        width: 90%;

        max-width: 90%;

    }

}



/************************************************



	footer



*************************************************/

footer {

    position: relative;

    padding: 3em 0 0;

    background: #eaeaea;

}



footer div {

    display: flex;

    flex-wrap: wrap;

    margin: 0 auto;

    width: 100%;

    max-width: 1000px;

    align-items: flex-start;

}



footer div .nav_footer {

    display: flex;

    justify-content: space-between;

    width: 70%;

    font-size: .9em;

}



footer div .nav_footer>ul>li {

    margin-bottom: .3em;

}



footer div .nav_footer>ul>li>a {

display: flex;

justify-content: space-between;

align-items: center;

padding: .3em .8em;

font-weight: bold;

color: #fff;

background: #c22733;
}



footer div .nav_footer>ul>li>a i {

    font-size: .7em;

}



footer div .nav_footer>ul>li>a:hover {

    background: #ccc;

}



footer div .nav_footer>ul>li ul li {

    border-bottom: 1px solid #333;

}



footer div .nav_footer>ul>li ul li a {

    display: block;

    padding: .3em 0;

    color: #000;

}



footer div .nav_footer>ul>li ul li a:hover {

    color: #c22733;

}



footer div .nav_footer>ul:first-child {

    width: 26%;

}



footer div .nav_footer>ul:first-child li:first-child a {

    justify-content: flex-start;

}



footer div .nav_footer>ul:last-child,

footer div .nav_footer>ul:nth-child(2) {

    width: 33%;

}



footer div .nav_footer>ul:nth-child(2) li ul li:last-child {

    border-bottom: none;

}



footer div .link_bnr {

    width: 25%;

}



footer div .link_bnr .link_shop {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

}



footer div .link_bnr .link_shop li {

    width: 30%;

    margin-bottom: 1em;

    text-align: center;

    line-height: 0;

    background: #fff;

    border: 1px solid #ccc;

}





footer div .link_bnr li figure {

    margin: 1em auto;

    width: 85%;

}



footer div .link_sns {

display: flex;

flex-wrap: wrap;

justify-content: space-between;

width: 85%;
}



footer div .link_sns li {

width: 17%;
}



footer div .link_sns li a {

width: 100%;

font-size: 1.8em;

display: inline-block;

color: #333;

text-align: center;
}



footer div .link_sns li a figure {

    width: 70%;

    margin: 0 auto;

}



footer small {

    display: block;

    margin: 2em 0 0;

    padding: 1em;

    width: calc(100% - 2em);

    color: #fff;

    text-align: center;

    background: #c22733;

}



footer div .link_bnr .link_shop::after {

    content: "";

    display: block;

    width: 30%;

}



@media screen and (max-width: 480px) {

    footer {

        overflow: hidden;

        padding: 0;

    }



    footer div {

        flex-direction: column;

        width: 100%;

    }



    footer div .nav_footer {

        flex-direction: column;

        margin-bottom: 2em;

        width: 100%;

    }



    footer div .nav_footer>ul {

        width: 100% !important;

    }



    footer div .nav_footer>ul>li {

        margin-bottom: .1em;

    }



    footer div .nav_footer>ul>li>a {

        padding: .8em;

    }



    footer div .nav_footer>ul>li ul {

        margin: 0 auto;

        width: 80%;

    }



    footer div .nav_footer>ul>li ul li a {

        padding: .8em 0;

    }



    footer div .nav_footer>ul>li ul li:last-child {

        border-bottom: none;

    }



    footer div .link_bnr {

        width: 95%;

    }



    footer div .link_sns {

        width: 75%;

        margin: auto;

    }





}



.pagetop {

    position: fixed;

    right: 2em;

    display: flex;

    justify-content: center;

    align-items: center;

    padding: 0;

    width: 3.5em;

    height: 3.5em;

    color: #fff;

    z-index: 10;

    background: #c22733;

}



.pagetop:hover {

    background: #555;

}



.pagetop:link,

.pagetop:visited {

    color: #fff;

    text-decoration: none;

}



/************************************************



	mv



*************************************************/

/*.mv {

  display: flex;

  align-items: center;

  margin: 0 auto;

  width: 100%;

  max-width: 1600px;

  height: 700px;

  background: url("../images/index/mv.png") no-repeat center bottom;

  background-size: cover;

  color: #000;

justify-content: flex-end;

}*/

.mv_area {

    position: relative;

}



.main_logo {

    position: absolute;

    z-index: 2;

    top: 43%;

    font-size: 3rem;

    text-align: center;

    width: 100%;

}



.main_logo p {

    color: #fff;

    text-shadow: 1px 2px 3px #808080;

    margin: 0;

}



@media screen and (max-width: 480px) {

    .mv_area section.news {

        position: relative;

        width: auto;

        padding: 1.5em 2em;

        height: auto;

        top: inherit;

        right: inherit;

        margin: 0;

    }



    /*

  .mv li {

    width: 60%;

  }

  .mv li figure {

    margin: 10em auto 0;

  }*/

}



/************************************************



	movie



*************************************************/

.movie dl {

    display: flex;

    justify-content: center;

    align-items: center;

    margin: 2em auto;

}



.movie dl dd {

    margin-left: 1em;

    width: 30%;

    font-size: 1.5em;

    text-align: center;

}



/************************************************



	top-page



*************************************************/

section {

    overflow: hidden;

    margin: 0 auto;

    padding: 4em 0;

    max-width: 1000px;

}



#leading {

    position: relative;

    max-width: 1000px;

    margin-top: 4em;

}



#leading ul li {

    font-size: 1.3em;

    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";

    line-height: 1.8;

    font-weight: bold;

}



#leading ul li h2 {

    margin-bottom: .5em;

    font-size: 1.3em;

    color: #000;

}



#leading ul li:first-child {

    position: relative;

    padding: 3.5em 0 3.5em 2.5em;

}



#leading ul li:first-child:before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    width: 100px;

    height: 100%;

    background: #c22733;

    opacity: .15;

}



#leading .link_btn {

    margin: 0 auto;

    width: 40%;

}



#leading:before,

#leading:after {

    position: absolute;

    font-family: "Times New Roman", Times, "serif";

    font-weight: bold;

    font-size: 14em;

    color: #c22733;

    line-height: 1;

    z-index: -1;

    opacity: .15;

}



#leading:before {

    content: "To the";

    top: 0;

    right: .5em;

}



#leading:after {

    content: "future";

    top: .8em;

    right: 0;

}



@media screen and (max-width: 480px) {

    #leading {

        margin-top: 0;

        width: 100%;

    }



    #leading ul {

        margin: 0 auto;

        width: 90%;

    }



    #leading ul li h2 {

        text-align: center;

    }



    #leading ul li:first-child {

        padding: 0;

    }



    #leading ul li:first-child:before {

        content: none;

    }



    #leading .link_btn {

        margin-top: 2em;

        width: 60%;

    }



    #leading:before,

    #leading:after {

        font-size: 10em;

        top: auto;

    }



    #leading:before {

        right: auto;

        left: -.1em;

        bottom: .8em;

    }



    #leading:after {

        right: -.1em;

        bottom: 0;

    }

}



/************************************************



	contents



*************************************************/

.topimg {

    position: relative;

    background: #000;

}



.topimg+main>section {

    position: relative;

    z-index: 2;

    margin-top: -8em;

}



.topimg h3 {

    position: absolute;

    top: 0;

    bottom: 0;

    right: 0;

    left: 0;

    margin: auto;

    padding-bottom: 2em;

    height: 2em;

    border: none;

    color: #fff;

    font-size: 2.5em;

    text-align: center;

    text-shadow: 0 0 10px #333;

    z-index: 3;

}



.topimg figure {

    opacity: .8;

}

.anniversary-link{
    background:#FFF;
    position:fixed;
    display: flex;
    right: 25px;
    bottom: 100px;
    text-align: center;
    border-radius: 50%;
    width: 190px;
    height: 190px;
    /* box-shadow: 0px 0px 15px 0px #00000038; */
    justify-content: center;
    border: 5px solid #F9F9F9;
    z-index: 3;
    overflow: hidden;
    transition: color .25s ease;
}
.anniversary-link a{
    padding: 20px 40px;
}

.anniversary-link a img{
    width:100%;
    margin: 10px 0 0;
}

.anniversary-link p{
    color:#e7264a;
    font-weight:bold;
    line-height:1.5;
    letter-spacing:1.5px;
    margin: 5px 0;
}

.anniversary-link.fade-item {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none;
}

.anniversary-link.fade-item.is-visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.anniversary-link > a{ position: relative; z-index: 1; }

/* 左→右にスライドインする面 */
.anniversary-link::before{
  content:"";
  position:absolute;
  inset:0;
  background:#e7264a;          /* ターコイズ */
  transform: translateX(-100%); /* 初期は左の外 */
  transition: transform .35s ease;
}

.anniversary-link:hover::before,
.anniversary-link:focus-visible::before{
  transform: translateX(0);     /* ホバーで全面に広がる */
}
.anniversary-link:hover,
.anniversary-link:focus-visible{
  color:#fff;
  outline:none;
}

.anniversary-link .arrow {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 3px;
  margin: 12.3px 0;
  border-radius: 9999px;
  background-color: #e7264a;
  transition: 0s;
  animation: slide 0.8s ease-in-out infinite alternate;
}

.anniversary-link .arrow::before,
.anniversary-link .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  right: 0;
  width: 15px;
  height: 3px;
  border-radius: 9999px;
  background-color: #e7264a;
  transform-origin: calc(100% - 1.5px) 50%;
}

.anniversary-link:hover .arrow{
  background-color: #ffffff;
}

.anniversary-link:hover .arrow::before,
.anniversary-link:hover .arrow::after {
  background-color: #ffffff;
}

@keyframes slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(8px);
  }
}
.anniversary-link .arrow::before {
  transform: rotate(45deg);
}

.anniversary-link .arrow::after {
  transform: rotate(-45deg);
}

.anniversary-link .anniversary-link-info{
    position:absolute;
    width: 100%;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 20px;
    font-weight:bold;
    color:#FFF;
    opacity:0;
    transition: 0.25s;
}

.anniversary-link:hover .anniversary-link-info{
    opacity:1;
}

@media screen and (max-width: 480px) {
.anniversary-link a {
    padding: 0px 10px;
}
.anniversary-link{
    width: 130px;
    height: 130px;
    bottom: 80px;
}
.anniversary-link a img {
    width: 75%;
    margin: 20px 0 0;
}

.anniversary-link .arrow {
  width: 15px;
  height: 2px;
  margin: 7.3px 0;
}

.anniversary-link .arrow::before,
.anniversary-link .arrow::after {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  right: 0;
  width: 10px;
  height: 2px;
  border-radius: 9999px;
  background-color: #e7264a;
  transform-origin: calc(100% - 1.5px) 50%;
}

.anniversary-link .anniversary-link-info {
    font-size: 15px;
}
}

main {

    padding: 3em;

}



main section {

    margin-bottom: 3em;

    padding: 3em 4em;

    background: #fff;

    /* ページ内リンク */

    /* 経営理念 */

    /* 会社概要 */

    /* 電子公告 */

    /*広告のご紹介*/

    /*お問い合わせ*/

    /*品質基本方針*/

    /*反社会的勢力対応方針*/

    /*女性活躍推進 行動計画*/

    /*女性活躍推進 行動計画*/

    /*個人情報保護方針*/

    /*事業紹介*/

    /*採用情報*/

}



main section>div {

    margin-bottom: 9em;

}



main section>div[id] {

    margin-top: -50px;

    padding-top: 50px;

}



main section>div:first-child {

    margin-bottom: 3em;

}



main section h3+div {

    margin-bottom: 2em;

}



main section dl {

    display: flex;

    flex-wrap: wrap;

}



main section dl dt,

main section dl dd {

    padding: .8em 0;

    border-bottom: 1px solid #dcdcdc;

}



main section dl dt {

    width: 30%;

}



main section dl dd {

    width: 70%;

}



main section.news {

    margin-bottom: 4em;

    padding: 0 0 3em;

    /*  border-bottom: solid 2px #e6e6e6;*/

}



main section.news div dl {

    display: flex;

    flex-wrap: wrap;

}



main section.news div dl dt {

    padding: .8em 0;

    width: 17%;

    border-bottom: 1px solid #d7d7d7;

}



main section.news div dl dd {

    display: flex;

    align-items: flex-start;

    padding: .8em 0;

    width: 80%;

    border-bottom: 1px solid #d7d7d7;

}



main section.news div dl dd a {

    width: 80%;

    color: #555;

}



main section.news div dl dd a:hover {

    color: #c22733;

}



main section.news div dl dd .tagName {

    margin-right: 1em;

    padding: .3em 0;

    width: 8em;

    text-align: center;

    font-size: .8em;

    font-weight: bold;

    color: #fff;

}



main section.news div dl dd .tagName.tag-0 {

    background: #00408d;

}



main section.news div dl dd .tagName.tag-1 {

    background: #969696;

}



main section.news div dl dd .tagName.tag-2 {background: #db0012;}



main section.news div dl dd .tagName.tag-3 {

    background: #333;

}



main section.news article time {

    font-weight: bold;

}



main section.news article h2 {

    align-items: flex-start;

    margin: .5em 0;

    font-size: 1.7em;

}



main section.news .link_btn {

    margin: 0 auto;

    width: 20%;

}



main section.news .link_btn i {

    margin-right: 1em;

}



main section.news#news div {

    overflow: visible;

    height: auto;

}



main section.news#news div .pager {

    display: flex;

    justify-content: center;

    margin-top: 2em;

}



main section.news#news div .pager a {

    margin: 0 .5em;

    padding: .5em 1em;

    border: 1px solid #c22733;

}



main section.news#news div .pager a.current {

    background: #f9dee3;

}



main section.news#news div .pager a:hover {

    background: #c22733;

    color: #fff;

}



main section.news.top-news dl dt:nth-of-type(n+6),

main section.news.top-news dl dd:nth-of-type(n+6) {

    display: none;

}



main section#top-company ul,

main section#top-business ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

}



main section#top-company ul li,

main section#top-business ul li {

    position: relative;

    overflow: hidden;

    margin-bottom: 1em;

    width: calc(90% / 3);

    background: #000;

}



main section#top-company ul li h4,

main section#top-business ul li h4 {

    pointer-events: none;

    position: absolute;

    left: 0;

    right: 0;

    top: 0;

    bottom: 0;

    z-index: 1;

    margin: auto;

    padding: 0 1em;

    height: 1em;

    color: #fff;

    font-size: 1em;

    text-align: center;

    line-height: 1.6;

}



main section#top-company ul li h4 i,

main section#top-business ul li h4 i {

    margin-left: 1em;

    font-size: .7em;

}



main section#top-company ul li a,

main section#top-business ul li a {

    display: block;

    position: relative;

    z-index: 0;

    height: 100%;

    opacity: .7;

}



main section#top-company ul li a figure:hover,

main section#top-business ul li a figure:hover {

    transform: scale(1.2, 1.2);

    transition: 1s all;

}



main section#top-company ul li:last-child {

    margin-right: auto;

    margin-left: calc(15% / 3);

}



main section#top-business ul:nth-of-type(1) {

    margin-bottom: 2em;

}



main section.recruit ul {

    display: flex;

    justify-content: space-between;

    align-items: center;

}



main section.recruit ul li {

    width: 48%;

}



main section.recruit ul li a {

    margin: 1em auto;

    width: 60%;

}



main section.recruit ul li a i {

    margin-right: .8em;

}



main section.group .laox_img {

    margin: 80px auto 60px;

    width: 100%;

    max-width: 150px;

}



main section.group ul {

    margin: 0 auto;

    display: flex;

    justify-content: center;

    align-items: center;

}



main section.group ul li {

    width: 150px;

    margin: 0 80px 55px;

    text-align: center;

}



main section.group ul li .link_box {

    margin: 40px auto 0;

    font-size: 15px;

    text-align: center;

    border-radius: 6px;

}



main section.group ul li .link_box a {

    padding: 10px 20px;

    color: #c22733;

    background-color: #fff;

    border: 2px solid #c22733;

    border-radius: 6px;

    line-height: 1;

}



main section.group ul li .link_box a:hover {

    color: #fff;

    background-color: #c22733;

}



main section .page_link {

    margin-top: 3em;

    margin-bottom: 2em;

    padding: .8em 0;

    background: #eaeaea;

}



main section .page_link ul {

    display: flex;

    justify-content: center;

    padding-left: 0 !important;

}



main section .page_link ul li {

    margin: 0 1em;

    list-style-type: none !important;

}



main section .page_link ul li a {

    font-weight: normal;

    color: #c22733;

}



main section .page_link ul li a i {

    font-size: .8em;

}



main section .page_link ul li a:hover {

    color: #555;

}



main section#philosophy h2 {

    margin: 1em 0;

}



main section#company iframe {

    width: 100%;

}



main section#publicannouncement ul {

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

}



main section#publicannouncement ul li {

    width: 45%;

}



main section#publicannouncement ul li a {

    display: flex;

    align-items: center;

    padding: 1em 0;

    border-bottom: 1px solid #dcdcdc;

    color: #555;

}



main section#publicannouncement ul li a p {

    margin-bottom: 0;

}



main section#publicannouncement ul li a i {

    margin-right: 1em;

    color: #c22733;

}



main section#publicannouncement ul li a i:last-of-type {

    margin-right: 0;

    margin-left: auto;

    padding-left: 1em;

    font-size: 2em;

}



main section#publicannouncement ul li a:hover {

    color: #c22733;

}



main section#cm ul {

    display: flex;

    flex-wrap: wrap;

}



main section#cm ul li {

    width: calc(90% / 3);

}



main section#contact .contact_box {

    margin-bottom: 2em;

    padding: 1em 2em;

    background: #f7f7f7;

}



main section#contact .contact_box li {

    padding: 1.5em;

    line-height: 2;

    text-align: center;

    background: #fff;

    border: 1px solid #e6e6e6;

    border-radius: 5px;

}



main section#contact .contact_box li a {

    font-size: 1.5em;

}



main section#contact .contact_box li i {

    margin-right: .5em;

}



main section#contact .contact_box li.two_column {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

}



main section#contact .contact_box li.two_column div {

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    width: calc(50% - 1px);

}



main section#contact .contact_box li.two_column div p {

    margin-bottom: 0;

    color: #555;

    font-size: initial;

    font-weight: normal;

}



main section#contact .contact_box li.two_column div p.small {

    font-size: 13px;

    line-height: 1.3;

}



main section#contact .contact_box li.two_column div:last-child {

    border-left: 1px solid #ccc;

}



main section#contact .contact_box li h5 {

    margin-bottom: 0;

    width: 100%;

    text-align: center;

}



main section#contact .contact_box li.w40 a {

    margin: 0 auto;

    width: 40%;

    font-size: 1em;

}



main section#contact .contact_box .tel {

    color: #c22733;

    font-size: 2em;

    font-weight: bold;

    text-align: center;

}



main section#quality ul,

main section#declaration ul,

main section#project ul {

    padding-left: 2em;

}



main section#quality ul li,

main section#declaration ul li,

main section#project ul li {

    margin-bottom: .5em;

    padding-left: .5em;

    list-style-type: decimal;

}



main section#quality ul li em,

main section#declaration ul li em,

main section#project ul li em {

    color: #000;

}



main section#quality ul li p,

main section#declaration ul li p,

main section#project ul li p {

    padding-left: 2em;

}



main section#project ul li p {

    line-height: 2;

}



main section#project ul li span {

    padding: .3em;

    font-weight: bold;

    background: #eaeaea;

}



main section#project ul li dl {

    display: block;

}



main section#project ul li dl dt,

main section#project ul li dl dd {

    width: 100%;

    border-bottom: none;

}



main section#project ul li dl dt {

    margin-left: 2em;

}



main section#project ul li dl dd {

    margin-left: 6em;

}



main section#privacypolicy .privacypolicy_column {

    margin: 2em auto 0;

    padding-top: 0;

    width: 80%;

}



main section#privacypolicy .privacypolicy_column ul {

    margin-bottom: 2em;

}



main section#privacypolicy .privacypolicy_column .main__inquiryBox {

    margin: 2em 0;

    padding: 2em;

    border: 14px solid #f9dee3;

    border-radius: 5px;

}



main section#business,

main section#product {

    /*法人事業*/

    /*EC事業*/

    /*フランチャイズ・ボランタリーチェーン事業*/

    /*商品について*/

}



main section#business h4,

main section#product h4 {

    font-size: 1.8em;

}



main section#business h4+p,

main section#product h4+p {

    /* margin-bottom: 0.8em; */

    text-align: center;

}



main section#business.houjin #jigyou ul,

main section#product.houjin #jigyou ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    margin: 2em auto;

}



main section#business.houjin #jigyou ul li,

main section#product.houjin #jigyou ul li {

    position: relative;

    margin: 0 1.5em 2em 0;

    padding: 2em 1em 5.7em;

    width: calc(90% / 3 - 20px);

    background: url("../images/business/houjin-01_bg.png") no-repeat bottom;

    background-size: contain;

    box-shadow: 0 0 10px #ccc;

}



main section#business.houjin #jigyou ul li h5,

main section#product.houjin #jigyou ul li h5 {

    display: flex;

    flex-direction: column;

    color: #000;

    text-align: center;

}



main section#business.houjin #jigyou ul li h5 figure,

main section#product.houjin #jigyou ul li h5 figure {

    margin: 0 auto 1em;

    height: 2.4em;

}



main section#business.houjin #jigyou ul li h5 figure img,

main section#product.houjin #jigyou ul li h5 figure img {

    width: auto;

    height: 100%;

}



main section#business.houjin #jigyou ul li h5 small,

main section#product.houjin #jigyou ul li h5 small {

    font-size: .8em;

    font-weight: normal;

}



main section#business.houjin #jigyou ul li h5:after,

main section#product.houjin #jigyou ul li h5:after {

    content: "ー";

}



main section#business.houjin #jigyou ul li>p,

main section#product.houjin #jigyou ul li>p {

    color: #424242;

    font-size: .8em;

    text-align: center;

}



main section#business.houjin #jigyou ul li div h6,

main section#product.houjin #jigyou ul li div h6 {

    margin-bottom: .5em;

    padding: .3em .5em;

    text-align: center;

    color: #fff;

    background: #333;

}



main section#business.houjin #jigyou ul li div p,

main section#product.houjin #jigyou ul li div p {

    display: flex;

    margin-bottom: 0;

    padding: .5em 0;

    border-bottom: 1px solid #bbb;

    font-size: .9em;

    font-weight: bold;

    line-height: 1.2;

}



main section#business.houjin #jigyou ul li div p:before,

main section#product.houjin #jigyou ul li div p:before {

    margin-right: .5em;

    content: "●";

    color: #c22733;

}



main section#business.houjin #jigyou ul li div p:last-of-type,

main section#product.houjin #jigyou ul li div p:last-of-type {

    border-bottom: none;

}



main section#business.houjin #jigyou ul li div figure,

main section#product.houjin #jigyou ul li div figure {

    position: absolute;

    right: 1em;

    bottom: 0;

    height: 6em;

}



main section#business.houjin #jigyou ul li div figure img,

main section#product.houjin #jigyou ul li div figure img {

    width: auto;

    height: 100%;

}



main section#business.houjin #jigyou ul li:nth-child(3),

main section#business.houjin #jigyou ul li:last-child,

main section#product.houjin #jigyou ul li:nth-child(3),

main section#product.houjin #jigyou ul li:last-child {

    margin-right: 0;

}



main section#business.houjin #jisseki figure,

main section#product.houjin #jisseki figure {

    margin-top: 2em;

}



main section#business.houjin #jirei ul,

main section#product.houjin #jirei ul {

    display: flex;

    justify-content: space-between;

}



main section#business.houjin #jirei ul li,

main section#product.houjin #jirei ul li {

    width: 45%;

}



main section#business.houjin #jirei ul li figure,

main section#product.houjin #jirei ul li figure {

    margin-bottom: 1em;

}



main section#business.houjin #jirei ul li figure.dummy,

main section#product.houjin #jirei ul li figure.dummy {

    display: flex;

    justify-content: center;

    align-items: center;

    height: 200px;

    background: #ccc;

}





main section#business.houjin #jirei ul li figure.dummy,

main section#product.houjin #jirei ul li figure.dummy {

    display: flex;

    justify-content: center;

    align-items: center;

    height: 200px;

    background: #ccc;

}









main section#business.ec #jigyou,

main section#product.ec #jigyou {

    text-align: center;

}



main section#business.ec #jigyou div,

main section#product.ec #jigyou div {

    display: flex;

    justify-content: space-between;

    margin: 0 auto 1.5em;

    width: 75%;

}



main section#business.ec #jigyou div figure,

main section#product.ec #jigyou div figure {

    width: 49%;

}



main section#business.ec #jisseki ul,

main section#product.ec #jisseki ul {

    display: flex;

    justify-content: center;

    margin-top: 2em;

}



main section#business.ec #jisseki ul li,

main section#product.ec #jisseki ul li {

    position: relative;

}



main section#business.ec #jisseki ul li:first-child,

main section#product.ec #jisseki ul li:first-child {

    left: 2em;

    z-index: 3;

    width: 50%;

}



main section#business.ec #jisseki ul li:last-child,

main section#product.ec #jisseki ul li:last-child {

    right: 2em;

    z-index: 2;

    width: 45%;

}



main section#business.ec #introduction ul,

main section#product.ec #introduction ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    margin-top: 2em;

}



main section#business.ec #introduction ul:nth-of-type(1) li,

main section#product.ec #introduction ul:nth-of-type(1) li {

    margin-bottom: 2em;

    width: calc(90% / 3);

}



main section#business.ec #introduction ul:nth-of-type(1) li:first-child,

main section#product.ec #introduction ul:nth-of-type(1) li:first-child {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin: 0 auto 2em;

    width: 100%;

    text-align: center;

}



main section#business.ec #introduction ul:nth-of-type(1) li:first-child figure,

main section#product.ec #introduction ul:nth-of-type(1) li:first-child figure {

    width: 45%;

    margin-right: 2em;

}



main section#business.ec #introduction ul:nth-of-type(1) li:first-child a,

main section#product.ec #introduction ul:nth-of-type(1) li:first-child a {

    width: 40%;

}



main section#business.ec #introduction ul:nth-of-type(2) li,

main section#product.ec #introduction ul:nth-of-type(2) li {

    width: 40%;

}



main section#business.ec #introduction ul:nth-of-type(2) li a,

main section#product.ec #introduction ul:nth-of-type(2) li a {

    margin: 0 auto;

    width: 50%;

}



main section#business.ec #introduction h5,

main section#product.ec #introduction h5 {

    margin-bottom: 1em;

    color: #424242;

    text-align: center;

}



main section#business.ec #introduction figure,

main section#product.ec #introduction figure {

    margin-bottom: 1em;

}



main section#business.ec #introduction a.link_btn em,

main section#product.ec #introduction a.link_btn em {

    margin-right: 1em;

}



main section#business.ec #sns ul,

main section#product.ec #sns ul {

    display: flex;

    justify-content: space-between;

    margin: 0 auto 6em;

    width: 40%;

}



main section#business.ec #sns ul li,

main section#product.ec #sns ul li {

    width: calc(80% / 4);

}



main section#business.gift #jigyou div,

main section#product.gift #jigyou div {

    display: flex;

    flex-direction: row-reverse;

    justify-content: space-between;

}



main section#business.gift #jigyou div figure,

main section#product.gift #jigyou div figure {

    width: 40%;

}



main section#business.gift #jigyou div p,

main section#product.gift #jigyou div p {

    width: 55%;

}



main section#business.gift #jigyou div p strong,

main section#product.gift #jigyou div p strong {

    font-size: 1.3em;

}



main section#business.gift #shijo div,

main section#product.gift #shijo div {

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    margin: 2em 0;

}



main section#business.gift #shijo div figure:first-child,

main section#product.gift #shijo div figure:first-child {

    width: 65%;

}



main section#business.gift #shijo div figure:last-child,

main section#product.gift #shijo div figure:last-child {

    width: 30%;

}



main section#business.gift #jisseki ul,

main section#product.gift #jisseki ul {

    margin: 2em 0;

}



main section#business.gift #jisseki ul li,

main section#product.gift #jisseki ul li {

    display: flex;

    justify-content: space-between;

    align-items: center;

}



main section#business.gift #jisseki ul li figure,

main section#product.gift #jisseki ul li figure {

    width: 45%;

}



main section#business.gift #jisseki ul li div,

main section#product.gift #jisseki ul li div {

    width: 50%;

}



main section#business.gift #tsuyomi h5+figure,

main section#product.gift #tsuyomi h5+figure {

    margin: 3em 0;

}



main section#business.gift #tsuyomi h6,

main section#product.gift #tsuyomi h6 {

    margin-bottom: .8em;

    font-size: 1.1em;

    text-align: center;

}



main section#business.gift #tsuyomi ul,

main section#product.gift #tsuyomi ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    margin: 2em 0;

}



main section#business.gift #tsuyomi ul li,

main section#product.gift #tsuyomi ul li {

    display: flex;

    flex-direction: column;

    margin-bottom: 2em;

}



main section#business.gift #tsuyomi ul li figure,

main section#product.gift #tsuyomi ul li figure {

    margin-bottom: 1em;

}



main section#business.gift #tsuyomi .fulfillment li,

main section#product.gift #tsuyomi .fulfillment li {

    width: calc(95% / 3);

    box-shadow: 0 0 10px #ccc;

}



main section#business.gift #tsuyomi .fulfillment li div,

main section#product.gift #tsuyomi .fulfillment li div {

    padding: 0 1em 1em;

}



main section#business.gift #tsuyomi .backup li,

main section#product.gift #tsuyomi .backup li {

    width: calc(90% / 3);

}



main section#business.gift #tsuyomi .backup li:nth-child(-n+2),

main section#product.gift #tsuyomi .backup li:nth-child(-n+2) {

    width: 48%;

}



main section#business.gift #tsuyomi .backup li h6,

main section#product.gift #tsuyomi .backup li h6 {

    text-align: left;

}



main section#business.gift #voice dl,

main section#product.gift #voice dl {

    display: flex;

    box-shadow: 0 0 10px #ccc;

    margin: 3em 0;

}



main section#business.gift #voice dl h6,

main section#product.gift #voice dl h6 {

    margin-bottom: 1em;

    padding: .5em 1em;

    color: #fff;

}



main section#business.gift #voice dl dt,

main section#product.gift #voice dl dt {

    position: relative;

    padding: 1.5em 2em 0;

    width: calc(50% - 4em);

}



main section#business.gift #voice dl dt h6,

main section#product.gift #voice dl dt h6 {

    background: #c22733;

}



main section#business.gift #voice dl dt p,

main section#product.gift #voice dl dt p {

    margin-left: 7em;

}



main section#business.gift #voice dl dt figure,

main section#product.gift #voice dl dt figure {

    position: absolute;

    left: 2em;

    bottom: 0;

    height: 7.4em;

}



main section#business.gift #voice dl dt figure img,

main section#product.gift #voice dl dt figure img {

    width: auto;

    height: 100%;

}



main section#business.gift #voice dl dt:before,

main section#product.gift #voice dl dt:before {

    content: "";

    position: absolute;

    top: 50%;

    left: 100%;

    margin-top: -15px;

    border: 15px solid transparent;

    border-left: 15px solid #fff;

}



main section#business.gift #voice dl dd,

main section#product.gift #voice dl dd {

    width: calc(50% - 4em);

    padding: 1.5em 2em;

    font-weight: bold;

    background: #dfe8ee;

}



main section#business.gift #voice dl dd h6,

main section#product.gift #voice dl dd h6 {

    background: #00408d;

}



main section#business.gift #voice dl dd p,

main section#product.gift #voice dl dd p {

    margin-bottom: .5em;

    font-size: 1.2em;

}



main section#business.gift #boshu .sengen,

main section#product.gift #boshu .sengen {

    margin: 2em 0;

}



main section#business.gift #boshu .sengen h5,

main section#product.gift #boshu .sengen h5 {

    color: #000;

}



main section#business.gift #boshu .sengen p,

main section#product.gift #boshu .sengen p {

    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";

    font-size: 1.3em;

    color: #000;

}



main section#business.gift #boshu ul,

main section#product.gift #boshu ul {

    display: flex;

    justify-content: space-between;

}



main section#business.gift #boshu ul.boshu-list,

main section#product.gift #boshu ul.boshu-list {

    margin-bottom: 3em;

}



main section#business.gift #boshu ul.boshu-list li,

main section#product.gift #boshu ul.boshu-list li {

    padding: 2em;

    width: 40%;

    border: 10px solid #e1e1e1;

}



main section#business.gift #boshu ul.boshu-list li figure,

main section#product.gift #boshu ul.boshu-list li figure {

    margin: 0 auto 1.5em;

    height: 9em;

    text-align: center;

}



main section#business.gift #boshu ul.boshu-list li figure img,

main section#product.gift #boshu ul.boshu-list li figure img {

    height: 100%;

}



main section#business.gift #boshu ul.boshu-details,

main section#product.gift #boshu ul.boshu-details {

    margin-bottom: 2em;

}



main section#business.gift #boshu ul.boshu-details li:first-child,

main section#product.gift #boshu ul.boshu-details li:first-child {

    width: 40%;

}



main section#business.gift #boshu ul.boshu-details li:last-child,

main section#product.gift #boshu ul.boshu-details li:last-child {

    width: 55%;

}



main section#business.gift #boshu ul.boshu-details li .melit,

main section#product.gift #boshu ul.boshu-details li .melit {

    margin-top: 2em;

    text-align: center;

    font-weight: bold;

}



main section#business.gift #boshu ul.boshu-details li .melit strong,

main section#product.gift #boshu ul.boshu-details li .melit strong {

    position: relative;

    display: block;

    margin: 0 auto 1.5em;

    padding: .3em;

    width: 50%;

    color: #fff;

    background: #c38283;

    border-radius: 2em;

}



main section#business.gift #boshu ul.boshu-details li .melit strong:before,

main section#product.gift #boshu ul.boshu-details li .melit strong:before {

    content: "";

    position: absolute;

    top: 100%;

    left: 50%;

    margin-left: -9px;

    border: 9px solid transparent;

    border-top: 9px solid #c38283;

}



main section#business.gift #boshu ul.boshu-details li .melit p,

main section#product.gift #boshu ul.boshu-details li .melit p {

    font-size: 1.3em;

    text-align: center;

}



main section#business.gift #boshu ul.boshu-details:nth-last-of-type(2),

main section#product.gift #boshu ul.boshu-details:nth-last-of-type(2) {

    flex-direction: row-reverse;

}



main section#business#product #kaihatsu ul,

main section#product#product #kaihatsu ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    margin-top: 2.5em;

}



main section#business#product #kaihatsu ul li,

main section#product#product #kaihatsu ul li {

    margin-bottom: 2em;

    width: 48%;

}



main section#business#product #kaihatsu ul li figure,

main section#product#product #kaihatsu ul li figure {

    margin-bottom: 1em;

}



main section#business#product #kaihatsu ul li:nth-child(3),

main section#product#product #kaihatsu ul li:nth-child(3) {

    width: 100%;

}



main section#business#product #kaihatsu ul li:nth-child(3) div,

main section#product#product #kaihatsu ul li:nth-child(3) div {

    display: flex;

    justify-content: space-between;

}



main section#business#product #kaihatsu ul li:nth-child(3) div figure,

main section#product#product #kaihatsu ul li:nth-child(3) div figure {

    width: calc(94% / 3);

}



main section#business#product #kaihatsu ul.kaihatsu_contact li,

main section#product#product #kaihatsu ul.kaihatsu_contact li {

    width: 40%;

    margin-bottom: 1.5em;

    padding: 2em 1.5em;

    text-align: center;

    border: 10px solid #eaeaea;

}



main section#business#product #kaihatsu ul.kaihatsu_contact li h5,

main section#product#product #kaihatsu ul.kaihatsu_contact li h5 {

    margin-bottom: 1em;

}



main section#business#product #kaihatsu ul.kaihatsu_contact li .link_btn,

main section#product#product #kaihatsu ul.kaihatsu_contact li .link_btn {

    margin: 1em auto 0;

    width: 70%;

}



main section#business#product #thoutatsu figure,

main section#product#product #thoutatsu figure {

    margin: 2em auto 0;

    width: 70%;

}



main section#business#product #henshu ul,

main section#product#product #henshu ul {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    margin-top: 3em;

}



main section#business#product #henshu ul li,

main section#product#product #henshu ul li {

    margin-bottom: 1em;

    width: calc(90% / 3);

}



main section#business #contact,

main section#product #contact {

    margin-top: 5em;

    padding: 2em;

    border: 10px solid #f9dee3;

    border-radius: 5px;

}



main section#business #contact .contact_box li.two_column,

main section#product #contact .contact_box li.two_column {

    display: flex;

}



main section#business #contact .contact_box li.two_column div,

main section#product #contact .contact_box li.two_column div {

    width: calc(50% - 1px);

}



main section#business #contact .contact_box li.two_column div:first-child,

main section#product #contact .contact_box li.two_column div:first-child {

    border-right: 1px solid #ccc;

}



main section#business #contact .contact_box li div,

main section#product #contact .contact_box li div {

    text-align: center;

}



main section#business #contact .contact_box li div h6,

main section#product #contact .contact_box li div h6 {

    margin-top: 1em;

}



main section#business #contact .contact_box li div i,

main section#product #contact .contact_box li div i {

    margin-right: 0.5em;

}



main section#business #contact .contact_box li div a,

main section#product #contact .contact_box li div a {

    font-size: 0.8em;

    color: #555;

}



main section#business #contact .contact_box li div span,

main section#product #contact .contact_box li div span {

    font-size: 2em;

}



main section#business #contact .contact_box li div p.small,

main section#product #contact .contact_box li div p.small {

    font-size: 13px;

    line-height: 1.3;

}



main section#business #contact .contact_box li.w40,

main section#product #contact .contact_box li.w40 {

    margin: 0 auto;

    width: 40%;

}



main section#recruit div>p {

    margin-bottom: 1.8em;

    text-align: center;

}



main section#recruit div dl dd strong {

    font-size: 1.2em;

}



main section#recruit div dl dd p {

    margin-top: 1em;

}



main section#recruit div dl dd .link_btn {

    margin: 1em 0;

    width: 40%;

}



main section#recruit .nav_link {

    display: flex;

    justify-content: center;

}



main section#recruit .nav_link a {

    display: block;

    margin: 0 1em;

    padding: 1em 2em;

    color: #555;

    font-size: 1.2em;

    font-weight: bold;

    border: 2px solid #c22733;

    border-radius: .8em;

}



main section#recruit .nav_link a i {

    margin-right: 1em;

    color: #c22733;

    transition: all .7s;

}



main section#recruit .nav_link a:hover {

    background: #c22733;

    color: #fff;

}



main section#recruit .nav_link a:hover i {

    color: #fff;

}



/************************************************



	ipad



*************************************************/

@media screen and (max-width: 959px) {

    body {

        font-size: 70%;

    }





    .main_logo {

        font-size: 2rem;

    }



    main section.news {

        margin-bottom: 4em;

        border-bottom: solid 2px #e6e6e6;

    }



}



/************************************************



	SP



*************************************************/

@media screen and (max-width: 480px) {





    .main_logo {

        position: absolute;

        z-index: 2;

        top: 52%;

        text-align: center;

        width: 100%;

        font-size: 1.2rem;

    }



    main section.news div {

        overflow-y: scroll;

        height: 280px;

    }





    .topimg+main>section {

        margin-top: -3em;

    }



    .topimg h3 {

        padding-bottom: 1em;

        font-size: 1.5em;

    }



    main {

        padding: 1.5em 2em;

    }



    main section {

        padding: 0;

        width: 100%;

        /* ページ内リンク */

        /* 会社概要 */

        /* 電子公告 */

        /*お問い合わせ*/

        /*女性活躍推進 行動計画*/

        /*個人情報保護方針*/

        /*事業紹介*/

        /*採用情報*/

    }



    main section>div {

        margin-bottom: 3em;

    }



    main section dl {

        flex-direction: column;

    }



    main section dl dt {

        padding-bottom: 0;

        width: 100%;

        border-bottom: none;

    }



    main section dl dd {

        padding-top: 0;

        width: 100%;

    }



    main section.news div {

        padding-right: 1.5em;

        height: 250px;

    }



    main section.news div dl {

        flex-direction: column;

    }



    main section.news div dl dt,

    main section.news div dl dd {

        width: 100%;

    }



    main section.news div dl dt {

        margin-bottom: .8em;

        padding-bottom: 0;

        border-bottom: none;

    }



    main section.news div dl dd {

        padding-top: 0;

    }



    /*main section.news div dl dd .tagName.tag-3 {

        display: none;

    }*/



    main section.news div dl dd .tagName.tag-3+a {

        width: 100%;

    }



    main section.news .link_btn {

        width: 60%;

    }



    main section#top-company ul li,

    main section#top-business ul li {

        width: calc(95% / 2);

    }



    main section#top-company ul li h4,

    main section#top-business ul li h4 {

        padding: .5em;

        width: calc(100% - 1em);

        font-size: .9em;

    }



    main section#top-company ul li:last-child {

        margin-left: 0;

    }



    main section.recruit ul {

        flex-direction: column;

    }



    main section.recruit ul li {

        margin-bottom: 1em;

        width: 100%;

    }



    main section.group img {

        max-width: 120px;

    }



    main section.group .laox_img {

        margin: 30px auto;

        max-width: 160px;

        text-align: center;

    }



    main section.group ul {

        flex-wrap: wrap;

        justify-content: space-between;

        align-items: inherit;

    }



    main section.group ul li {

        margin: 0;

        width: 48%;

    }



    main section.group ul li:nth-of-type(n + 3) {

        margin-top: 40px;

    }



    main section.group ul li a {

        display: block;

    }



    main section.group ul li .link_box {

        width: 70%;

        margin: 20px auto 0;

        font-size: 12px;

    }



    main section .page_link ul {

        flex-wrap: wrap;

        justify-content: space-between;

        padding: 1em 2em 0 !important;

    }



    main section .page_link ul li {

        margin: 0 0 1em;

        width: 45%;

    }



    main section#company #yakuin dl {

        flex-direction: row;

    }



    main section#company #yakuin dl dt,

    main section#company #yakuin dl dd {

        padding: .8em 0;

        border-bottom: 1px solid #dcdcdc;

    }



    main section#company #yakuin dl dt {

        width: 30% !important;

    }



    main section#company #yakuin dl dd {

        width: 70% !important;

    }



    main section#publicannouncement ul {

        flex-direction: column;

    }



    main section#publicannouncement ul li {

        width: 100%;

    }



    main section#contact .contact_box li.two_column {

        flex-direction: column;

    }



    main section#contact .contact_box li.two_column div {

        width: 100%;

    }



    main section#contact .contact_box li.two_column div:last-child {

        margin-top: 1em;

        padding-top: 1em;

        border-left: none;

        border-top: 1px solid #ccc;

    }



    main section#contact .contact_box li a {

        font-size: 1.3em;

    }



    main section#contact .contact_box li.w40 a {

        width: 90%;

    }



    main section#project ul li dl dt {

        margin-left: 0;

        margin-bottom: 1em;

    }



    main section#project ul li dl dd {

        margin-left: 0;

    }



    main section#privacypolicy .privacypolicy_column {

        width: 90%;

    }



    main section#business,

    main section#product {

        padding: 1.5em 1em;

        width: calc(100% - 2em);

        /*商品について*/

    }



    main section#business h4,

    main section#product h4 {

        font-size: 1.4em;

    }



    main section#business.houjin #jigyou ul,

    main section#product.houjin #jigyou ul {

        flex-direction: column;

    }



    main section#business.houjin #jigyou ul li,

    main section#product.houjin #jigyou ul li {

        position: relative;

        margin: 0 auto 2em !important;

        padding-bottom: 7em;

        width: calc(100% - 2em - 20px);

    }



    main section#business.houjin #jigyou ul li h5 figure,

    main section#product.houjin #jigyou ul li h5 figure {

        margin: 0 auto .5em;

        height: 2em;

    }



    main section#business.houjin #jigyou ul li div,

    main section#product.houjin #jigyou ul li div {

        margin-bottom: 1em;

    }



    main section#business.houjin #jigyou ul li div figure,

    main section#product.houjin #jigyou ul li div figure {

        height: 7em;

    }



    main section#business.houjin #jirei ul,

    main section#product.houjin #jirei ul {

        flex-direction: column;

    }



    main section#business.houjin #jirei ul li,

    main section#product.houjin #jirei ul li {

        width: 100%;

    }



    main section#business.ec #jigyou div,

    main section#product.ec #jigyou div {

        width: 100%;

    }



    main section#business.ec #jigyou div figure,

    main section#product.ec #jigyou div figure {

        width: 49%;

    }



    main section#business.ec #jisseki ul,

    main section#product.ec #jisseki ul {

        position: relative;

        padding-bottom: 32em;

    }



    main section#business.ec #jisseki ul li,

    main section#product.ec #jisseki ul li {

        position: absolute;

    }



    main section#business.ec #jisseki ul li:first-child,

    main section#product.ec #jisseki ul li:first-child {

        top: 10em;

        left: -1em;

        width: 100%;

    }



    main section#business.ec #jisseki ul li:last-child,

    main section#product.ec #jisseki ul li:last-child {

        top: 0;

        right: 1em;

        width: 72%;

    }



    main section#business.ec #introduction ul:nth-of-type(1) li,

    main section#product.ec #introduction ul:nth-of-type(1) li {

        display: flex;

        justify-content: space-between;

        margin-bottom: 2em;

        width: 100%;

    }



    main section#business.ec #introduction ul:nth-of-type(1) li figure,

    main section#product.ec #introduction ul:nth-of-type(1) li figure {

        margin-right: 1em;

        width: 100%;

    }



    main section#business.ec #introduction ul:nth-of-type(1) li:first-child,

    main section#product.ec #introduction ul:nth-of-type(1) li:first-child {

        flex-direction: column;

        margin-bottom: 3em;

        width: 100%;

    }



    main section#business.ec #introduction ul:nth-of-type(1) li:first-child figure,

    main section#product.ec #introduction ul:nth-of-type(1) li:first-child figure {

        width: 100%;

        margin-right: 0;

    }



    main section#business.ec #introduction ul:nth-of-type(1) li:first-child div,

    main section#product.ec #introduction ul:nth-of-type(1) li:first-child div {

        width: 60%;

    }



    main section#business.ec #introduction ul:nth-of-type(2),

    main section#product.ec #introduction ul:nth-of-type(2) {

        margin-top: 0;

    }



    main section#business.ec #introduction ul:nth-of-type(2) li,

    main section#product.ec #introduction ul:nth-of-type(2) li {

        width: 100%;

    }



    main section#business.ec #introduction ul:nth-of-type(2) li a,

    main section#product.ec #introduction ul:nth-of-type(2) li a {

        width: 60%;

    }



    main section#business.ec #introduction ul:nth-of-type(2) li:first-child,

    main section#product.ec #introduction ul:nth-of-type(2) li:first-child {

        margin-bottom: 3em;

    }



    main section#business.ec #sns ul,

    main section#product.ec #sns ul {

        display: flex;

        justify-content: space-between;

        margin: 0 auto 6em;

        width: 80%;

    }



    main section#business.ec #sns ul li,

    main section#product.ec #sns ul li {

        width: calc(80% / 4);

    }



    main section#business.gift #jigyou div,

    main section#product.gift #jigyou div {

        flex-direction: column;

    }



    main section#business.gift #jigyou div figure,

    main section#product.gift #jigyou div figure {

        margin: 0 auto 1em;

        width: 70%;

    }



    main section#business.gift #jigyou div p,

    main section#product.gift #jigyou div p {

        width: 100%;

    }



    main section#business.gift #shijo div,

    main section#product.gift #shijo div {

        flex-direction: column;

    }



    main section#business.gift #shijo div figure,

    main section#product.gift #shijo div figure {

        margin: 0 auto 1.5em;

    }



    main section#business.gift #shijo div figure:first-child,

    main section#product.gift #shijo div figure:first-child {

        width: 100%;

    }



    main section#business.gift #shijo div figure:last-child,

    main section#product.gift #shijo div figure:last-child {

        width: 70%;

    }



    main section#business.gift #jisseki ul li,

    main section#product.gift #jisseki ul li {

        flex-direction: column;

    }



    main section#business.gift #jisseki ul li figure,

    main section#product.gift #jisseki ul li figure {

        margin-bottom: 1em;

        width: 100%;

    }



    main section#business.gift #jisseki ul li div,

    main section#product.gift #jisseki ul li div {

        width: 100%;

    }



    main section#business.gift #tsuyomi .fulfillment li,

    main section#product.gift #tsuyomi .fulfillment li {

        width: calc(95% / 2);

    }



    main section#business.gift #tsuyomi .backup li,

    main section#product.gift #tsuyomi .backup li {

        width: calc(90% / 2);

    }



    main section#business.gift #tsuyomi .backup li:nth-child(-n+2),

    main section#product.gift #tsuyomi .backup li:nth-child(-n+2) {

        width: 100%;

    }



    main section#business.gift #tsuyomi .backup li h6,

    main section#product.gift #tsuyomi .backup li h6 {

        text-align: left;

    }



    main section#business.gift #voice dl,

    main section#product.gift #voice dl {

        flex-direction: column;

    }



    main section#business.gift #voice dl dt,

    main section#product.gift #voice dl dt {

        width: calc(100% - 4em);

    }



    main section#business.gift #voice dl dt h6,

    main section#product.gift #voice dl dt h6 {

        background: #c22733;

    }



    main section#business.gift #voice dl dt p,

    main section#product.gift #voice dl dt p {

        margin-left: 7em;

    }



    main section#business.gift #voice dl dt figure,

    main section#product.gift #voice dl dt figure {

        position: absolute;

        left: 2em;

        bottom: 0;

        height: 8em;

    }



    main section#business.gift #voice dl dt figure img,

    main section#product.gift #voice dl dt figure img {

        width: auto;

        height: 100%;

    }



    main section#business.gift #voice dl dtbefore,

    main section#product.gift #voice dl dtbefore {

        content: none;

    }



    main section#business.gift #voice dl dt:after,

    main section#product.gift #voice dl dt:after {

        content: "";

        position: absolute;

        top: 100%;

        left: 50%;

        margin-left: -15px;

        border: 15px solid transparent;

        border-top: 15px solid #fff;

    }



    main section#business.gift #voice dl dd,

    main section#product.gift #voice dl dd {

        padding: 2.5em 2em 1.5em;

        width: calc(100% - 4em);

    }



    main section#business.gift #boshu ul,

    main section#product.gift #boshu ul {

        flex-direction: column;

    }



    main section#business.gift #boshu ul.boshu-list li,

    main section#product.gift #boshu ul.boshu-list li {

        margin-bottom: 2em;

        width: calc(100% - 4em - 20px);

    }



    main section#business.gift #boshu ul.boshu-details,

    main section#product.gift #boshu ul.boshu-details {

        flex-direction: column-reverse !important;

    }



    main section#business.gift #boshu ul.boshu-details li:first-child,

    main section#product.gift #boshu ul.boshu-details li:first-child {

        width: 100%;

    }



    main section#business.gift #boshu ul.boshu-details li:last-child,

    main section#product.gift #boshu ul.boshu-details li:last-child {

        width: 100%;

    }



    main section#business.gift #boshu ul.boshu-details li .melit,

    main section#product.gift #boshu ul.boshu-details li .melit {

        margin-top: 2em;

        text-align: center;

        font-weight: bold;

    }



    main section#business.gift #boshu ul.boshu-details li .melit strong,

    main section#product.gift #boshu ul.boshu-details li .melit strong {

        position: relative;

        display: block;

        margin: 0 auto 1.5em;

        padding: .3em;

        width: 50%;

        color: #fff;

        background: #c38283;

        border-radius: 2em;

    }



    main section#business.gift #boshu ul.boshu-details li .melit strong:before,

    main section#product.gift #boshu ul.boshu-details li .melit strong:before {

        content: "";

        position: absolute;

        top: 100%;

        left: 50%;

        margin-left: -9px;

        border: 9px solid transparent;

        border-top: 9px solid #c38283;

    }



    main section#business#product #kaihatsu ul.kaihatsu_contact,

    main section#product#product #kaihatsu ul.kaihatsu_contact {

        flex-direction: column;

    }



    main section#business#product #kaihatsu ul.kaihatsu_contact li,

    main section#product#product #kaihatsu ul.kaihatsu_contact li {

        margin-bottom: 1em;

        width: calc(100% - 20px - 3em);

    }



    main section#business#product #kaihatsu ul.kaihatsu_contact li .link_btn,

    main section#product#product #kaihatsu ul.kaihatsu_contact li .link_btn {

        width: 70%;

    }



    main section#business#product #thoutatsu figure,

    main section#product#product #thoutatsu figure {

        width: 100%;

    }



    main section#business#product #henshu ul,

    main section#product#product #henshu ul {

        display: flex;

        flex-wrap: wrap;

        justify-content: space-between;

    }



    main section#business#product #henshu ul li,

    main section#product#product #henshu ul li {

        margin-bottom: 1em;

        width: calc(90% / 3);

    }



    main section#business #contact,

    main section#product #contact {

        padding: 1em 1em;

    }



    main section#business #contact .contact_box li.two_column,

    main section#product #contact .contact_box li.two_column {

        flex-direction: column;

    }



    main section#business #contact .contact_box li.two_column div,

    main section#product #contact .contact_box li.two_column div {

        width: 100%;

    }



    main section#business #contact .contact_box li.two_column div:first-child,

    main section#product #contact .contact_box li.two_column div:first-child {

        margin-bottom: 1em;

        padding: 1em 0;

        border-right: none;

        border-bottom: 1px solid #ccc;

    }



    main section#business #contact .contact_box li div a,

    main section#product #contact .contact_box li div a {

        font-size: 0.9em;

    }



    main section#business #contact .contact_box li div span,

    main section#product #contact .contact_box li div span {

        font-size: 1.65em;

    }



    main section#business #contact .contact_box li.w40,

    main section#product #contact .contact_box li.w40 {

        margin: 0 auto 1em;

        width: 100%;

    }



    main section#recruit div>p {

        margin-bottom: 1.8em;

        text-align: center;

    }



    main section#recruit div dl dd .link_btn {

        margin: 1em auto;

        width: 80%;

    }



    main section#recruit .nav_link {

        flex-direction: column;

    }



    main section#recruit .nav_link a {

        margin: 1em 0 0;

    }

}



/************************************************



	SE



*************************************************/

/* SE */

/************************************************



	animation



*************************************************/

/* fadeIn */

.fadeIn,

.fadeIn01,

.fadeIn02,

.fadeIn03 {

    opacity: 0;

}



.fadeIn01.active {

    -webkit-animation: fadeIn 0.3s ease 0.5s 1 forwards;

    animation: fadeIn 0.5s ease 0.3s 1 forwards;

}



.fadeIn02.active {

    -webkit-animation: fadeIn .6s ease 1s 1 forwards;

    animation: fadeIn 0.5s ease .6s 1 forwards;

}



.fadeIn03.active {

    -webkit-animation: fadeIn .9s ease 1.5s 1 forwards;

    animation: fadeIn 0.5s ease .9s 1 forwards;

}



@keyframes fadeIn {

    100% {

        opacity: 1;

    }

}



@-webkit-keyframes fadeIn {

    100% {

        opacity: 1;

    }

}



/* fadeUp */

.fadeUp,

.fadeUp01,

.fadeUp02 {

    opacity: 0;

}



.fadeUp {

    transform: translateY(50px);

}



.fadeUp01,

.fadeUp02 {

    transform: translateY(30px);

}



.fadeUp.active {

    animation: fadeUp 1s forwards;

    -webkit-animation: fadeUp 1s forwards;

}



.fadeUp01.active {

    animation: fadeUp2 .4s forwards;

    -webkit-animation: fadeUp2 .4s forwards;

}



.fadeUp02.active {

    animation: fadeUp2 1s forwards;

    -webkit-animation: fadeUp2 1s forwards;

}



@-webkit-keyframes fadeUp {

    0% {

        opacity: 0;

        transform: translateY(50px);

    }



    100% {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes fadeUp {

    0% {

        opacity: 0;

        transform: translateY(50px);

    }



    100% {

        opacity: 1;

        transform: translateY(0);

    }

}



@-webkit-keyframes fadeUp2 {

    0% {

        opacity: 0;

        transform: translateY(30px);

    }



    100% {

        opacity: 1;

        transform: translateY(0);

    }

}



@keyframes fadeUp2 {

    0% {

        opacity: 0;

        transform: translateY(30px);

    }



    100% {

        opacity: 1;

        transform: translateY(0);

    }

}



/*scrollFx*/

.scrollFx {

    clip-path: inset(0 100% 0 0);

    transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);

    transition-property: clip-path;

    transition-duration: .75s;

    transition-delay: .25s;

}



.scrollFx.active {

    clip-path: inset(0 0 0 0);

}



/*20240904追記*/

main section#business.houjin #thanks_plus div {

    color: #333;

    text-align: center;

    margin-bottom: 1.8em;

}



main section#business.houjin #thanks_plus h5 {

    color: #333;

    text-align: center;

    margin-bottom: 1em;

    font-size: 1.5em;

}





main section#business.houjin #thanks_plus .thanks_plus-scene ul {

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

    row-gap: 20px;

}



main section#business.houjin #thanks_plus .thanks_plus-scene ul li {

    width: 48%;

    background-color: #c22733;

    border-radius: 10px;

}



@media screen and (min-width: 768px) {

    main section#business.houjin #thanks_plus .thanks_plus-scene ul li {

        width: 23%;

    }

}



main section#business.houjin #thanks_plus .thanks_plus-scene ul li p {

    text-align: center;

    color: #fff;

    font-weight: bold;

    margin-bottom: 0;

}



main section#business.houjin #thanks_plus .thanks_plus-point ul {

    display: flex;

    justify-content: space-between;

    flex-wrap: wrap;

    row-gap: 20px;

}



main section#business.houjin #thanks_plus .thanks_plus-point .point {

    position: relative;

    padding: 0px 0px 0px 60px;

    margin: 10px 0px;

    font-weight: bold;

    font-size: 16px;

}





main section#business.houjin #thanks_plus .thanks_plus-point .point::before,

main section#business.houjin #thanks_plus .thanks_plus-point .point::after {

    position: absolute;

    top: 50%;

    left: 0px;

    transform: translateY(-50%);

    width: 50px;

    height: 50px;

    border-radius: 10px;

    color: #fff;

    text-align: center;

    box-sizing: border-box;

}



main section#business.houjin #thanks_plus .thanks_plus-point .point::before {

    padding: 0px;

    background-color: #c22733;

    font-size: 14px;

    content: "Point";

}



main section#business.houjin #thanks_plus .thanks_plus-point .point::after {

    padding: 0.75em 0px 0px;

    font-size: 20px;

    content: attr(data-num);

}



@media screen and (min-width: 768px) {

    main section#business.houjin #thanks_plus div {

        margin-bottom: 6em;

    }





    main section#business.houjin #thanks_plus .thanks_plus-point ul li {

        width: 40%;

    }



    main section#business.houjin #thanks_plus .thanks_plus-point .point {

        font-size: 24px;

        text-align: left;

    }



    main section#business.houjin #thanks_plus .thanks_plus-point ul {

        justify-content: center;

        margin-right: -100px;

    }



    main section#business.houjin #thanks_plus figure {

        max-width: 600px;

        margin: auto;

    }



    main section#business.houjin #thanks_plus .thanks_plus-scene ul li p {

        line-height: 1.5;

        padding: 10px;

    }

}