@charset "utf-8";
/* CSS Document */
/*---------------------------------------------*
* 共通部品用CSS
*----------------------------------------------*/
/*---------------------------------------------*
* body
*----------------------------------------------*/
body{
background-color: #F2F4F5;
}
p.thanks{
font-size: 1.8rem;
color: #22222;
line-height: 2;
text-align: center;
}
/*---------------------------------------------*
* heder
*----------------------------------------------*/
header{
width: 100%;
height:0;
opacity: 0;
overflow: hidden;
display: flex;
  justify-content: center;
  align-items: center;
justify-content: space-between;
padding-left: 3.125%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
box-shadow: 0 0 10px hsla(0,0%,66.7%,.8);
position: fixed;
top: 0;
left: 0;
z-index: 10000;
background-color: #fff;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all  0.5s ease;
}
header h1.header_logo{
display: inline-block;
}
header.active{
height: 70px;
opacity: 1;
}
header .page_top{
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all  0.5s ease;
}
header .page_top:hover{
background-color: #bbbbbb;
}
header svg{
width:16px;
height:16px;
display: block;
fill: #666;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all  0.5s ease;
}
header .page_top:hover svg{
fill: #fff;
}
header img.logo{
width: 220px;
height:auto;
}
.header__dx {
    text-align: center;
    border: 1px solid #000;
    padding: 7px 11.5px 2px;
    margin-left: 42px;
}
.header__dx img {
    width: 95px;
    margin-bottom: 5px;
}
.header__dx span {
    display: block;
    font-size: 9.8px;
}

.header__dx2 {
    text-align: center;
    border: 1px solid #000;
    padding: 2px 0px 2px 0px;
    margin-left: 10px;
    width: 119.33px;
    height: 45.5px;
}
.header__dx2 img {
    aspect-ratio: 1 / 1;
    height: 45px;
}
.header__dx2 span {
    display: block;
    font-size: 9.8px;
}

.header__dx3 {
    margin-top: 4px;
    text-align: center;
    border: 1px solid #000;
    margin-left: 42px;
    width: 94px;
    height: 40px;
}
.header__dx3 img {
    aspect-ratio: 1 / 1;
    height: 40px;
}
.header__dx3 span {
    display: block;
    font-size: 9.8px;
}

.header__dx4 {
    text-align: center;
    border: 1px solid #000;
    background-color: #FFF;
    width: 174.33px;
    height:65.76px;
}
.header__dx4 img {
    object-fit: contain;
    width: 100%;
    height: 80%;
    margin-top: 10px;
}
.header__dx4 span {
    display: block;
    font-size: 9.8px;
}

@media (max-width: 1200px) {
    .security_logo_top {
        display: none;
    }
}

@media (min-width: 766px) {
    .security_logo_top_sp {
        display: none;
    }
}

.header__dx5 {
    text-align: center;
    border: 1px solid #000;
    width: 173px;
    height: 50.43px;
    background-color: #FFF;
    padding-top: 7px;
    padding-bottom: 7px;
}
.header__dx5 img {
    aspect-ratio: 1 / 1;
    height: 50px;
}

.header__dx6 {
    text-align: center;
    border: 1px solid #000;
    padding: 7px 11.5px 2px 11.5px;
    background-color: #FFF;
}
.header__dx6 img {
    width: 150px;
    margin-bottom: 5px;
}
.header__dx6 span {
    display: block;
    font-size: 9.8px;
}

.header__dx7 {
    text-align: center;
    border: 1px solid #000;
    width: 173px;
    height: 87%;
    background-color: #FFF;
    padding-top: 7px;
    padding-bottom: 0px;
}
.header__dx7 img {
    aspect-ratio: 1 / 1;
    height: 40px;
}

.security_logo_top {
    width: 50%;
    position: absolute;
    right: 0;
    top: 65px;
    text-align: right;
}

header ul.right{
	display:flex;
    height: 70px;
	justify-content:flex-start;
	align-items: center;	
}
header ul.right .btn a{
display: flex;
  justify-content: center;
  align-items: center;
width: 380px;
height: 70px;
color: #ffffff;
background-color: #cccccc;
font-size: 1.6rem;
}
header ul.right .btn.green a{
background-color: #86C136;
}
header ul.right .btn.blue a, ul.right .btn.blue a {
background-color: #1884C4;
}
header ul.right .btn a:hover{
opacity: 0.7;
}
header ul.right .page_top a{
width: 70px;
height: 70px;
display: flex;
  justify-content: center;
  align-items: center;
}
header ul.right .contact{
padding-right:3.5rem;
}
header ul.right .contact img,
ul.right .contact img {
width: 30px;
height: auto;
margin-right: 10px;
}
ul.right .contact img {
    width: 44px;
}
header ul.right .contact div p, ul.right .contact div p {
	display:flex;
	justify-content:flex-start;
	align-items: center;
}
header ul.right .contact div p:nth-of-type(1), ul.right .contact div p:nth-of-type(1) {
font-size: 2.4rem;
line-height: 1;
padding-bottom:0.5em;
}
ul.right .contact div p:nth-of-type(1) {
    font-size: 3.2rem !important;
    font-weight: bold;
    padding-bottom: 0;
}
header ul.right .contact div p:nth-of-type(2) span{
padding-left: 1em;
}


/* ☆☆☆new☆☆☆ */

.header-rm{
    display: flex;
    flex-direction: row;
    position: fixed;
    width:100%;
    top: 0;
    left: 0;
    z-index: 10000;
    padding: 35px 40px;
    background-color: #fff;
}
.header-rm-logo-text{
    font-size: 8px;
    color: #393D44;
    margin-bottom: 9px;
}
.header-rm-logo{
    width: 165px;
}
.header-rm-tel{
    font-size: 24px;
    color: #393D44;
    font-weight: bold;
    margin-left: 5px;
}
.header-rm-tel-hour{
    font-size: 10px;
    color: #393D44;
    font-weight: bold;
    margin-top: 7px;
}
.header-rm-nav-flex{
    display: flex;
    align-items: center;
    margin: 0 33px;
    gap: 22px;
}
.header-rm-flex-1{
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: auto;
}
.header-rm-flex-row{
    display: flex;
    flex-direction: row;
    white-space: nowrap;
}
.header-rm-flex-row-1{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.heder-rm-nav-pc{
    display: flex;
    flex-direction: row;
    font-size: 12px;
    font-weight: bold;
}

.heder-rm-nav-pc li{
    /* margin-left: 22px; */
}

.heder-rm-nav-pc a{
    padding: 1em;
}
.heder-rm-nav-pc a:hover{
    /* background-color: #aaa; */
    text-decoration: underline 1.5px;
    opacity: 0.7;
}

.heder-rm-speed-btn{
    background-color: #003A9A;
    width: 175px;
    height: 50px;
    border-radius: 50px;
    color: #fff !important;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 15px;
    border: #003A9A solid 1px;
    margin-right: 50px;
}

.heder-rm-speed-btn:hover{
    background-color: #fff;
    color: #003A9A !important;
    opacity: 0.7;
}

@media screen and (max-width:1450px){
    .header-rm-flex-1{
    /*
        margin-left: 0px;
    */
    }
}

@media screen and (max-width:1410px){
    .header-rm-tel{
        font-size: 16px;
    }
    .header-rm-tel-hour{
        font-size: 8px;
    }
    .header-rm-nav-flex{
        margin: 0 22px;
    }
    .heder-rm-nav-pc li{
        /* margin-left: 16px; */
    }
    .heder-rm-speed-btn{
        width: 165px;
        font-size: 16px;
    }
}

@media screen and (max-width:1350px){
    .heder-rm-nav-pc li{
        white-space: nowrap;
    }
}

@media screen and (max-width:1300px){
    .header-rm-nav-flex{
        margin: 0 12px;
    }
    .heder-rm-nav-pc a{
        padding: 0.5em;
    }
}

@media screen and (max-width:1250px){
    /* .header-rm-nav-flex{
        margin: 0 12px;
    }
    .heder-rm-nav-pc a{
        padding: 0.5em;
    } */
}

@media screen and (max-width:1200px) {
    .header-rm{
        display: none;
    }
}

@media screen and (max-width: 768px){
    /* .heder-rm-nav-pc{
        display: none;
    } */
}

/*---------------------------------------------*
* nav
*----------------------------------------------*/
#humbt,
input#chk{
display: none;
}
nav.global{
display: flex;
  justify-content: center;
  align-items: center;
width: 1200px;
min-height:90px;
max-height: 180px;
margin: 0 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      background-color: #ffffff;
box-shadow:0 0 5px rgba(0,0,0,0.5);
}
nav.global ul{
width:100%;
display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background-color: #fff;
}
nav.global ul.g-nav p,
nav.global ul.g-nav a{
cursor: pointer;
display: flex;
  justify-content: center;
  align-items: center;
height: 90px;
width: auto;
font-size:16px;
padding: 2rem;
color: #1884C4;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
position: relative;
}
nav.global>ul.g-nav>li>a:after{
content: "";
display: block;
width:0;
height:3px;
background-color: #1884C4;
position: absolute;
bottom:0;
left:50%;
z-index: 100;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
nav.global>ul.g-nav>li>a:hover:after{
width: 100%;
left: 0;
}
nav.global>ul>li ul.second{
background-color: #EEEEEE;
width: 1200px;
height: 0;
opacity: 0;
overflow: hidden;
left: 0;
top:70px;
position: absolute;
z-index:90;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
nav.global>ul>li ul.second.right{
	justify-content:flex-end;
    padding-right:20%;
}
nav.global>ul>li ul.second li{
padding:2em 0;
}
nav.global>ul>li ul.second a{
padding: 0 2em;
height: auto;
border-left: 1px solid #1884C4;
}
nav.global>ul>li ul.second li:nth-last-of-type(1) a{
border-right: 1px solid #1884C4;
}
nav.global>ul>li ul.second:hover,
nav.global>ul>li p:hover +ul.second{
  animation: slidein 0.5s forwards;
}
@keyframes slidein {
 from {
height:0;
opacity:0;
  }
to {
height:80%;
opacity: 1;
  }
}
nav.global>ul>li ul.second li a:hover{
text-decoration: underline;
}
nav .nagoya.sp,
nav p.time{
display: none;
}
nav.global ul.g-nav li a.current{
color:#444444;
}

/*---------------------------------------------*
* conversion btn
*----------------------------------------------*/
ul.conversion{
width: 100%;
height: 90px;
display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
}
ul.conversion>li{
width: 50%;
}
ul.conversion>li a{
width: 100%;
height: 90px;
font-size: 20px;
background-color:#ccc;
position: relative;
display: flex;
  justify-content: center;
  align-items: center;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box; 
color: #fff;
position: relative;
z-index:0;
}
ul.conversion>li a:hover{
opacity:1;
}
ul.conversion>li a img{
display: block;
position: absolute;
right:35px;
top:35px;
height:20px;
width: auto;
}

ul.conversion>li a:after{
position: absolute;
content: "";
display: block;
width:100%;
height: 100%;
left: 0;
top: 0;
z-index: -1;
  transform-origin:left top;
  transform:scale(0, 1);
  transition:transform .5s;
}
ul.conversion>li.navy a{
background-color:#002563;
}
ul.conversion>li.green a{
background-color:#86C136;
}
ul.conversion>li.blue a{
background-color:#1884C4;
}
ul.conversion>li.navy a:after{
background-color:#0029A6;
}
ul.conversion>li.green a:after{
background-color: #9ED159;
}
ul.conversion>li.blue a:after{
background-color: #2A9FE5;
}
ul.conversion>li.navy a:hover:after,
ul.conversion>li.blue a:hover:after,
ul.conversion>li.green a:hover:after{
  transform-origin: left top;
  transform:scale(1, 1);
  opacity: 1;
}
ul.conversion>li.navy a:hover img,
ul.conversion>li.blue a:hover img,
ul.conversion>li.green a:hover img{
opacity: 1;
}
ul.conversion>li img.sp,
ul.conversion>li.navy{
display: none;
}
ul.conversion>li a br{
display: none;
}
aside.pc.sp{
display: block;
margin:3vw auto 0 auto;
max-width:1000px;
}
aside.pc.sp > ul.conversion{
justify-content:space-around;}
aside.pc.sp > ul.conversion>li{
max-width: 320px;
}
.bnr__dx {
    padding-top: 80px;
    padding-bottom: 80px;
    background-color: #fff;
}
.bnr__dx__box {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #000;
    box-sizing: border-box;
    padding: 35px 60px 41.5px 57.7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.bnr__dx__box__left img {
    max-width: 366px;
    margin-bottom: 4px;
}
.bnr__dx__box__left span {
    display: block;
    font-size: 20px;
    letter-spacing: .2em;
    text-align: center;
    font-weight: normal;
}
.bnr__dx__box__right {
    font-size: 28px;
    letter-spacing: .2em;
    line-height: 1.75;
    font-weight: 200;
}

/*追加 日付の横に文字を表示する */

.press-release-area {
    padding-top: 80px;
    padding-bottom: 80px;
    margin-top: 3vw;
    background-color: #fff;
    
}

.press-release-textarea{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.press-release-textarea h2{
    font-size: 24px;
    color: #1884c4;
    font-family: "Noto Serif JP",Yu Mincho,YuMincho,Hiragino Mincho ProN,"NotoSerifCJKjp",HGS明朝E,HG明朝E,serif;
}

.press-release-content{
    margin-top:60px;
}

.press-release-content li{
    margin-top:30px;
}

.press-release-content tr{
    margin-top:30px;
}

.press-release-table td{
	background-color:#fff;
	border:none !important;
}

.press-release-date{
    margin-right: 20px;
    margin-left: 20px;
    font-size: 16px;
}

.press-release-text{
    font-size: 16px;
    margin-right: 20px;
}

.press-release-td-date{
    width: 95px;
}

.margin-top-30 {
margin-top: 30px;
}

/* ☆☆☆new☆☆☆ */

.press-release-rm {
    background-color: #fff;
}

.press-release-rm-wrap {
    width: 1200px;
    margin: 0 auto;
    padding-top: 120px;
    padding-bottom: 120px;
}

.press-release-rm-title{
    font-size: 20px;
    color:  #003A9A;
    font-weight: bold;
    text-align: center;
}

.press-release-rm-subtitle{
    font-size: 24px;
    color:  #003A9A;
    font-weight: bold;
    text-align: center;
    margin-top: 32px;
}

/* .press-release-rm-list{
    margin: 0 auto;
    margin-top: 80px;
    width:62%;
	display:flex;
    flex-direction: column;
}

.press-release-rm-flex{
    display: flex;
    flex-direction: row;
    margin-bottom: 20px;
    line-height: 150%;
}
.press-release-rm-data{
    font-size: 16px;
    color: #393D44;
    margin-right: 20px;
}

.press-release-rm-text{
    font-size: 16px;
    color: #000;
} */

.press-release-rm-btn{
    display: flex;
    justify-content: center;
    margin-top: 60px;
}

.press-release-rm-viewmore-btn{
    background-color: #fff;
    width: 300px;
    height: 60px;
    border-radius: 50px;
    border: #003A9A solid 1px;
    color: #003A9A !important;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.press-release-rm-viewmore-btn:hover{
    background-color: #003A9A;
    color: #fff !important;
    opacity: 0.7;
}

/* ☆☆☆new☆☆☆ */
.press-release-rm-list{
    margin-top: 80px;
    width:100%;
	display:flex;
    justify-content: center;
    flex-wrap: wrap;
}

.press-release-rm-list li{
    border-top: 1px solid #CCCCCC;
}
.press-release-rm-list li:hover{
    opacity: 0.7;
}
/* 奇数だけ適応 */
.press-release-rm-list li:nth-child(odd){
    margin-right: 40px;
}
/* 最後の二個だけ適応 */
.press-release-rm-list li:nth-last-child(-n+2){
    border-bottom: 1px solid #CCCCCC;
}

.press-release-rm-list a{
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 15px;
    margin-bottom: 20px;
}

.press-release-rm-list time{
    color: #AEAEAE;
    font-size: 16px;
    font-weight: bold;
}

.press-release-rm-list p{
    color: #393D44;
    font-size: 16px;
    width: 380px;
    margin-top: 12px;
    line-height: 150%;
    font-weight: bold;
    min-height: 48px;
}

.press-release-rm-list .cat{
    width: 100px;
    height: 20px;
    background-color: #EFF4FB;
    color: #8A9DB7;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

.press-release-rm-list img{
    width: 32px;
    height: 32px;
    margin-left: 35px;
}
@media screen and (max-width:1200px) {
    .press-release-rm-wrap {
        width: auto;
    }
    .press-release-rm-list li:nth-child(odd){
    margin-right: 0px;
}
}
@media screen and (max-width:768px) {
    .press-release-rm {
    }
    
    .press-release-rm-wrap {
        width: auto;
    }
    
    .press-release-rm-title{
    }
    
    .press-release-rm-subtitle{
        font-size: 16px;
    }
    
    /* .press-release-rm-list{
        margin: 0 auto;
        margin-top: 80px;
        width:90%;
    }

    .press-release-rm-flex{
        flex-direction: column;
        margin-bottom: 25px;
    }
    .press-release-rm-data{
        margin-right: 0px;
        margin-bottom: 5px;
    } */
    .press-release-rm-list{
    }
    
    .press-release-rm-list li{
    }
    /* 奇数だけ適応 */
    .press-release-rm-list li:nth-child(odd){
        margin-right: 0px;
    }
    /* 最後の二個だけ適応 */
    .press-release-rm-list li:nth-last-child(-n+2){
        border-bottom: initial;
    }
    /* 最後の一個だけ適応 */
    .press-release-rm-list li:nth-last-child(-n+1){
        border-bottom: 1px solid #CCCCCC;
    }
    
    .press-release-rm-list a{
    }
    
    .press-release-rm-list time{
    }
    
    .press-release-rm-list p{
        width: 310px;
        font-size: 14px;
    }
    
    .press-release-rm-list .cat{
    }
    
    .press-release-rm-list img{
        margin-left: 20px;
    }
}


/*---------------------------------------------*
  btns 
*---------------------------------------------*/  
p.btn.blue a{
width: 380px;
height: 66px;
display: flex;
  justify-content: center;
  align-items: center;
color: #fff;
font-size: 1.6rem;
background-color: #1884c4;
position: relative;
z-index:200;
}
p.btn.blue a:after{
position: absolute;
content: "";
display: block;
width:100%;
height: 100%;
left: 0;
top: 0;
z-index:-1;
  transform-origin:left top;
  transform:scale(0, 1);
  transition:transform .5s;
background-color: #2A9FE5;
}
p.btn.blue a:hover:after{
  transform-origin: left top;
  transform:scale(1, 1);
  opacity: 1;
}

p.btn.white a{
width: 300px;
height: 66px;
display: flex;
  justify-content: center;
  align-items: center;
color: #1884c4;
font-size: 1.6rem;
border: 1px solid #1884c4;
position: relative;
z-index:200;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
p.btn.white a:after{
position: absolute;
content: "";
display: block;
width:100%;
height: 100%;
left: 0;
top: 0;
z-index:-1;
  transform-origin:left top;
  transform:scale(0, 1);
  transition:transform .5s;
background-color:#1884c4;
}
p.btn.white a:hover{
color: #ffffff;
}
p.btn.white a:hover:after{
  transform-origin: left top;
  transform:scale(1, 1);
  opacity: 1;
}

/*---------------------------------------------*
* スマホ時　続きを見る表示
*----------------------------------------------*/
.acc-btn{
display: block;
cursor: pointer;
text-align: right;
color: #1884c4;
}
.acc-btn.active,
.acc-btn{
display: none;
}
.qanda .acc-btn.active,
.qanda .acc-btn{
display: flex;
}
.acc-body,
.acc-body.active{
display: block;
}
.sp{
display: none;
}
/*---------------------------------------------*
* table
*----------------------------------------------*/
table {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
table td,
table th {
    min-height: 1em;
}
table td,
table th{
    word-wrap: break-word;
    word-break: break-all;
    vertical-align: middle;
}

table.ta{
    width:100%;
    margin:5em auto 0 auto;
    clear: both;
display:table;
table-layout: fixed;
border-collapse: separate;
border-spacing:5px 5px;
empty-cells:show;
    line-height: 1.5;
}
table.ta td{
    padding:0.75em 1em;
    color: #666666;
    background-color: #eeeeee;
}
table.ta td:nth-of-type(1){
    width: 35%;
    background-color:#DEEFC7;
}

.comparison-table-area {
    width: 1090px;
    margin-right: auto;
    margin-left: auto;
    border-right: 2px solid #aaa;
    border-left: 2px solid #aaa;
    border-bottom: 2px solid #aaa;
}

.comparison-table-area thead tr th:first-of-type {
    color: #fff;
    background-color: #1884c4;
    border-right: 2px solid #1884c4;
    border-top: 2px solid #1884c4;
    border-bottom: 1px solid #1884c4;
}

.comparison-table-area tbody tr td {
    padding: 1rem 30px;
}
.comparison-table-area tbody tr td, .comparison-table-area tbody tr th {
    width: 25%;
    font-weight: 500;
    letter-spacing: .08rem;
    line-height: 1.69;
    font-size: 1.4rem;
    border-right: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
}
.comparison-table-area thead tr td, .comparison-table-area thead tr th {
    text-align: center;
    padding-top: 1.3rem;
    padding-bottom: 1.3rem;
    width: 25%;
    font-size: 1.7rem;
    font-weight: 500;
    letter-spacing: .12rem;
    border-right: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
    border-top: 2px solid #aaa;
}
.comparison-table-area tbody tr th {
    border-right: 2px solid #1884c4;
}
.comparison-table-area tbody tr th {
    padding: 1rem 17px;
}
.comparison-table-area tbody tr td, .comparison-table-area tbody tr th {
    width: 25%;
    font-weight: 500;
    letter-spacing: .08rem;
    line-height: 1.69;
    font-size: 1.4rem;
    border-right: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
}
.comparison-table-area tbody tr td:first-of-type {
    color: #1884c4;
    background-color: #f1f8fc;
    border-right: 2px solid #1884c4;
    border-left: 2px solid #1884c4;
}
.comparison-table-area tbody br.sp{
display: none;
}
.comparison-table-area tbody tr:nth-last-of-type(1) td:first-of-type {
    border-bottom:2px solid #1884c4;
}

/*---------------------------------------------*
* qanda
*----------------------------------------------*/
ul.qanda li {
padding:0 0 0 0;
}
ul.qanda label{
width: 100%;
cursor: pointer;
position: relative;
padding:40px 0 40px 75px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
	display:flex;
	justify-content:flex-start;
	align-items: center;	
}
ul.qanda label:after{
content: "";
width: 10px;
height: 18px;
display: block;
background-image: url("../images/icon-right-solid-bk.svg");
background-size: cover;
margin-left: 1.5em;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  position: absolute;
  right:30px;
  transform: rotate(90deg);
}
ul.qanda span.in{
background-color: #1884C4;
color: #ffffff;
width: 30px;
height: 30px;
font-size: 1.5rem;
line-height: 1;
display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left:30px;
}
ul.qanda .acc-body{
background-color: #F4F4F4;
width: 100%;
height:0;
padding:0 30px;
overflow: hidden;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  position: relative;
}
ul.qanda .acc-body span.in{
background-color: #E4007F;
display: none;
}
ul.qanda .acc-body p{
width: 100%;
padding:0 0 0 45px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.qanda .acc-body.active span.in{
display: flex;
}
ul.qanda .acc-body.active{
padding:30px;
height: auto;
}
ul.qanda label.active:after{
  transform: rotate(-90deg);
}
/*---------------------------------------------*
* Banner
*----------------------------------------------*/
aside.bnr ul{
width: 1200px;
margin: 0 auto;
display: flex;
  justify-content: center;
  align-items: center;
    -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      justify-content: space-between;
}
aside.bnr ul li{
width:32.5%;
margin-bottom: 1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
aside.bnr ul li img{
width: 100%;
height: auto;
}

/* ☆☆☆new☆☆☆  */
.banners-rm{
    background-color: #edf4fb;
}

.banners-rm-wrap {
    width: 1200px;
    margin: 0 auto;
    padding-top: 100px;
    padding-bottom: 100px;
}

.banners-rm-flex {
    display: flex;
    flex-direction: column;
    gap: 40px;

}

.banners-rm-flex ul{
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 40px;
}
@media screen and (max-width:1200px) {
    .banners-rm-wrap {
        width: auto;
    }
    .banners-rm-flex ul{
    gap: 20px;
    }
    .banners-rm-flex li{
        text-align: center;
    }
    .banners-rm-flex img{
        width: 90%;
    }
}
@media screen and (max-width:768px) {
    .banners-rm{
    }
    .banners-rm-wrap {
        width: auto;
    }
    .banners-rm-flex {
    }
    .banners-rm-flex ul{
        flex-direction: column;
        margin: 0 auto;
    }
    .banners-rm-flex li{
        text-align: center;
    }
    .banners-rm-flex img{
        width: 90%;
    }
}


/*---------------------------------------------*
* address
*----------------------------------------------*/
.wrapper.address{
background-image:url("../images/footer/footer_contact_bg.png");
  /* background-attachment: fixed; */
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
margin:0 auto 5vw auto;  
}
.wrapper.address .wrap{
margin: 0 auto;
padding: 100px 0 70px 0;
background-color:inherit;
width: 1200px;
}
.wrapper.address address{
text-align: center;
}
.wrapper.address address img{
max-width: 100%;
}
address .contact.tels{
padding:30px 0 70px 0;
}
address .contact.tels p{
display: flex;
  justify-content: center;
  align-items: center;
padding-top: 2rem;
font-size: 1.8rem;
font-weight: 700;  
}
address .contact.tels p svg{
width: 60px;
height: auto;
fill: #003A9A;
margin-right:10px;
}
address .contact.tels svg.sp{
display: none;
}
.footer-rm-comp-tel{
color: #003A9A !important; 
}
address .contact.tels p:nth-of-type(1){
font-size: 4.8rem;
font-weight: 700;
font-family: Lato,-apple-system,Noto Sans CJK JP,Noto Sans Japanese,Noto Sans JP,游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,Hiragino Kaku Gothic ProN,メイリオ,Meiryo,sans-serif;
}
address .contact.tels p:nth-of-type(n+2) a{
    font-size: 1.8rem;
    margin-left: 1em;
    font-family: Lato,-apple-system,Noto Sans CJK JP,Noto Sans Japanese,Noto Sans JP,游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,Hiragino Kaku Gothic ProN,メイリオ,Meiryo,sans-serif;
}
address .contact.tels p:nth-last-of-type(1){
    padding-top: 1rem;
    font-size: 1.2rem;
}
.conversion li{
width: 49%;
}
address .contact.tels p span.sp{
display:none;
}

.footer-rm-btn-group1{
    display: flex;
    flex-direction: row;
    justify-content: center;
}
.footer-rm-speed-btn1{
    background-color: #003A9A;
    width: 300px;
    height: 60px;
    border-radius: 50px;
    color: #fff !important;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: #003A9A solid 1px;
    
}
.footer-rm-speed-btn1:hover{
    background-color: #fff;
    color: #003A9A !important;
    opacity: 0.7;
}
.footer-rm-speed-btn2{
    background-color: #fff;
    width: 300px;
    height: 60px;
    border-radius: 50px;
    border: #003A9A solid 1px;
    color: #003A9A !important;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 40px;
}
.footer-rm-speed-btn2:hover{
    background-color: #003A9A;
    color: #fff !important;
    opacity: 0.7;
}

@media screen and (max-width:768px) {
    .footer-rm-btn-group1{
        flex-direction: column;
        align-items: center;
        margin-top: 25px;
     }
     
     .footer-rm-speed-btn1{

     }
     
     .footer-rm-speed-btn2{
        margin-left: 0px;
        margin-top: 20px;
     }
}

/*-----------------------
 sp_cvbtn
-------------------------*/
aside.sp_cvbtn{
display: none;
}

/*-----------------------
 page-top
-------------------------*/
#page-top{
	width:40px;
	height:40px;
	display:block;
	position:fixed;
	right:5%;
	bottom:5%;
	cursor:pointer;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	-webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
	-moz-transition: opacity 0.3s ease, visibility 0.3s ease;
	-o-transition: opacity 0.3s ease, visibility 0.3s ease;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	z-index:1000;
}
#page-top.is-visible{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}
#page-top img{
	width:40px;
	height:40px;
	display:block;
}
#page-top.is-visible:hover{
	opacity:0.8;
}
main.contact ~ #page-top{
	bottom:15%;
}
.btn .grecaptcha-badge{
z-index: 998;
}
/*---------------------------------------------*
* footer
*----------------------------------------------*/
footer{
clear: both;
margin: 0 auto;
/* ☆☆☆new☆☆☆ */
/* background-color: #626262; */
background-color: #003A9A;
position: relative;
width:100%;
padding:0 0 60px 0;
}
footer:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.footer-rm-dx-group{
    display: flex; 
    justify-content: flex-start;
    padding: 0.5em 0 0 1em;
    line-height: 1.5;
}
@media screen and (max-width: 1200px) {
    .footer-rm-dx-group{
        padding: 0.5em 0 0 0;
    }
}
.footer__dx {
    background-color: #fff;
    margin-top: 20px;
    width: 143px;
    height:89px;
    text-align: center;
    border: 1px solid #000;
    margin-left: auto;
    margin-right: auto;
}

.footer__dx span {
    display: block;
    margin-top: 5px;
    color: #000;
}
.footer__dx img {
    object-fit: contain;
    width: 100%;
    height: 80%;
    margin-top: 15px;
    margin-bottom: 0;
}

.footer__dx2 {
    background-color: #fff;
    margin-top: 20px;
    padding-top: 17px;
    padding-bottom: 10px;
    width: 143px;
    text-align: center;
}

.footer__dx2 img {
    height: 62px;
    aspect-ratio: 1 / 1;
}

.footer__dx3 {
    background-color: #fff;
    margin-top: 20px;
    padding-top: 13.32px;
    padding-bottom: 5.71px;
    width: 198.67px;
    text-align: center;
    border: 1px solid #000;
}

.footer__dx3 img {
    height: 62px;
    aspect-ratio: 1 / 1;
}
.footer__dx2_pc_only {
    margin: 0 10px;
}

.footer__dx3_pc_only {
    margin: 0 10px;
}
@media (min-width: 766px) {
    .footer__dx3_pc_only {
        display: none;
    }
}
@media (max-width: 768px) {
    .footer-rm-dx-group{
        justify-content: space-around;
    }
    .footer__dx {
        width: 190px;
    }
    .footer__dx3 {
        width: 190px;
        margin-left: 0;
    }
    .footer__dx2_pc_only {
        display: none;
    }
    .footer__dx3_pc_only {
        margin-right: 0;
    }
}

@media (max-width: 391px) {
    .footer__dx {
        width: 170px;
    }
    .footer__dx3 {
        width: 170px;
    }
}
/* @media (max-width: 431px) {
.footer__dx {
    width: 170px;
    margin-left: 10px !important;
}

.footer__dx3 {
    background-color: #fff;
    margin-top: 20px;
    padding-top: 13.32px;
    padding-bottom: 5.71px;
    width: 190px;
    text-align: center;
    border: 1px solid #000;
}

.footer__dx3 img {
    height: 62.2px;
    aspect-ratio: 1 / 1;
}

}

@media (max-width: 415px) {
.footer__dx {
    width: 170px;
    margin-left: 10px !important;
}

.footer__dx3 {
    background-color: #fff;
    margin-top: 20px;
    padding-top: 13.32px;
    padding-bottom: 5.71px;
    width: 190px;
    text-align: center;
    border: 1px solid #000;
}

.footer__dx3 img {
    height: 62.5px;
    aspect-ratio: 1 / 1;
}

}

@media (max-width: 391px) {
    .footer__dx {
        width: 170px;
    }
    .footer__dx3 {
        background-color: #fff;
        margin-top: 20px;
        padding-top: 13.32px;
        padding-bottom: 5.71px;
        width: 170px;
        text-align: center;
        border: 1px solid #000;
    }
    
    .footer__dx3 img {
        height: 63px;
        aspect-ratio: 1 / 1;
    }
}

@media (max-width: 376px) {
.footer__dx {
    width: 170px;
    margin-left: 10px !important;
}
.footer__dx3 {
    background-color: #fff;
    margin-top: 20px;
    padding-top: 13.32px;
    padding-bottom: 5.71px;
    width: 170px;
    text-align: center;
    border: 1px solid #000;
}

.footer__dx3 img {
    height: 63.2px;
    aspect-ratio: 1 / 1;
}
} */

footer .f-logo{
position: relative;
width:100%;
display: flex;
  justify-content: center;
  align-items:flex-start;
justify-content: space-between;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin: 0 auto;
padding:0;
background-color: inherit;
max-width:1200px;
}
footer .f-logo .logo{
width: 30%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
footer .f-logo img.pc{
display: block;
}
footer .f-logo img.sp{
display: none;
}
footer .f-logo a,
footer .f-logo{
color: #fff;
}
footer .f-logo a:hover{
text-decoration: underline;
}
footer .f-logo dl{
margin:1em 0 0 0;
padding:0.5em 0 0 1em;
line-height: 1.5;
clear: both;
}
footer .f-logo dl dt{
font-size: 1.6rem;
}
footer nav.f-nav{
width: 66%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
position: relative;
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;	
justify-content: space-between;
line-height: 2.5;
}
footer nav.f-nav ul{
margin-bottom: 2em;
}
footer nav.f-nav a{
color: #fff;
}
footer nav.f-nav a:hover{
text-decoration: underline;
}
footer nav.f-nav p.subtitle{
font-size: 1.6rem;
color: #fff;
text-decoration: underline;
font-weight: bold;
}
footer .copys{
margin:3em auto;
padding:0 1em;
max-width:1200px;
display: flex;
  justify-content: center;
  align-items:flex-start;
justify-content: space-between;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
footer .copys .copy {
    font-size: 1.1rem;
    line-height: 1;
    color: #fff;
    font-weight: bold;
}
footer .copys .line img{
height:25px;
width: auto;
}
footer .copys .line a{
color: #fff;
display: flex;
font-weight: bold;
  justify-content: center;
  align-items: center;
  background-color: #06C755;
  font-size: 1.1rem;
  padding:0 0.5em;
  border-radius: 0.5em;
}
footer .copys .line a:hover{
opacity: 0.8;
}

#toc_container {
margin:2vw 0;
}
/*---------------------------------------------*
* width 1350px
*----------------------------------------------*/
@media screen and (max-width:1350px){
header.active,
header{
	display:flex;
	justify-content:flex-start;
	align-items:flex-start;	
    /* height: 140px; */
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding:0;
}
header>a:nth-of-type(1){
height: 70px;
display: flex;
  justify-content: center;
  align-items: center;
   padding:0 0 0 3.125%;
      z-index: 99999;
}
header ul.right {
height: auto;
width: 100%;
	justify-content:flex-end;
	align-items:flex-start;	
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      position: absolute;
  padding:0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;  
}
header ul.right li{
height: 70px;
}
header ul.right li.contact{
width: 100%;
	display:flex;
	justify-content:flex-end;
	align-items: center;
    padding:0 3.125% 0 0;
}
header ul.right li.contact div{
max-width: 210px;
}
header ul.right .btn a{
width: 100%;
}
header ul.right .btn{
   width : -webkit-calc(50% - 35px) ;
   width : calc(50% - 35px) ;
}
ul.conversion {
    width: 100%;
    height:70px;
}
ul.conversion > li a {
    width: 100%;
    height:70px;
}
ul.conversion > li a img {
    display: block;
    position: absolute;
    right: 25px;
    top: 25px;
    height: 20px;
    width: auto;
}
ul.conversion > li a {
    width: 100%;
    height: 9vw;
    font-size: 2vw;
}
ul.conversion > li a img {
top: inherit;
}
nav.global {
box-shadow:none;
position: fixed;
    display: flex;
    justify-content:flex-start;
    align-items: center;
    width:auto;
    min-height: 70px;
    margin: 0;
    left:270px;
    top: 0;
z-index: 10001;
opacity: 1;
}

nav.global ul.g-nav p, nav.global ul.g-nav a {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    height:70px;
    width: auto;
    font-size: 16px;
    padding:0 0.5em;
}
nav.global > ul > li ul.second {
    background-color: #EEEEEE;
    width:100%;
    top:70px;
}
nav.global > ul > li ul.second a {
    padding: 0 0.75em;
    font-size: 1.4rem;
}
nav.global:not(.active){
opacity: 0;
}
nav.global ul.conversion{
display: none;
}
nav .nagoya.sp{
display: none;
}
.bnr__dx__box {
    max-width: 96%;
}
.wrapper.address .wrap {
    margin: 0 auto 0 auto;
    padding: 7vw 0;
    background-color: inherit;
    width:96%;
}

}
/* width 1350px end --------------------------------------------*/
/* add 2021/09/17 Gnav for PC */
@media (min-width:1200px) {
    body{
        /* padding-top: 142px; */
        padding-top: 120px;
    }
    /* header, header.active, nav.global {
        display: none;
    }元のnav */
    .nav-pc-only {
        background-color: #fff;
        border-top: 3px solid #1884c4;
        position: fixed;
        z-index: 999;
        width: 100%;
        top: 0;
    }
    .nav-pc-only .left {
        display: flex;
        align-items: end;
        float: left;
        margin: 20px 0 0 30px;
    }
    .nav-pc-only .left p {
        margin-bottom: 6px;
    }
    .nav-pc-only .right {
        float: right;
        display: flex;
        width: 490px;
        margin: 20px 30px 0 0;
    }
    ul.right li.contact {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 0 30px 0 0;
    }
    li.contact p:last-child {
        letter-spacing: 1px;
    }
    .nav-pc-only .btn.blue a {
        padding: 20px 30px;
        white-space: nowrap;
        display: block;
        color: #fff;
        font-size: 1.6rem;
    }
    nav.global.for-sp {
        display: none;
    }
    nav.global.for-pc {
        display: block;
        position: static;
        opacity: 100;
        box-shadow: none;
        margin-left: auto;
        width: auto;
    }
    .nav-pc-only .g-nav {
        justify-content: space-evenly;
    }
    .nav-pc-only .g-nav a {
        height: auto !important;
        padding: 2rem !important;
    }
    main.top .slider li {
        max-height: 500px;
    }
}
@media (max-width:1200px) {
    .nav-pc-only {
        display: none;
    }
    li.contact p {
        display: none !important;
    }
}/* add 2021/09/17 Gnav for PC */

/*---------------------------------------------*
* width 1200px
*----------------------------------------------*/
@media screen and (max-width: 1200px){
header.active, header{
height: 50px;
}
header > a:nth-of-type(1) {
    height:40px;
    padding:5px 0 0 3.125%;
}
header img.logo {
height: 40px;
width: auto;
}
.header__dx {
    margin-top: 4px;
    padding: 6px 8.8px 1.5px;
    margin-left: 33px;
}
header .header__dx img {
    width: 76px;
    margin-bottom: 4px;
}
.header__dx span {
    font-size: 8px;
}
header ul.right{
display: none;
}
header .header_logo {
padding-left: 3%;
}
#humbt{
		display:inline-block;
		float:right;
		margin:0;
    width:30px;
    height:30px;
    cursor: pointer;
	position:fixed;
    right:3%;
    top:10px;
    z-index: 10002;
	}
#humbt span {
    display: block;
    position: absolute;
    height:2px;
    width: 100%;
    background:#404040;
    left: 0;
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
}	
#humbt span:nth-child(1) {
    top:6px;
}
#humbt span:nth-child(2) {
    top:20px;
}
#chk:checked ~header #humbt span:nth-child(1) {
    top:13px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
#chk:checked ~header #humbt span:nth-child(2) {
    top:13px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
	nav.global{
		position:fixed;
        display: block;
		width:100%;
		height:0;
        min-height: inherit;
        max-height:inherit;
		overflow:hidden;
		background-color:#FFF;
		left:0;
		top:50px;
          -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
	}
#chk:checked ~ nav.global{
height: 100%;
}
nav.global ul{
	display:flex;
	justify-content:flex-end;
	align-items:flex-end;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
nav.global ul.g-nav a{
font-size: 1.6rem;
    color: #333;
    font-weight: bold;
    height:52px;    
    padding: 0 1em;
    justify-content: flex-start;
    position: relative;
}
nav.global ul.g-nav li>a:after,
nav.global ul.g-nav a:after{
display: none;
}
nav.global ul.g-nav li>a:before,
nav.global ul.g-nav a:before{
content: "";
position: absolute;
right:1em;
background-image: url("../images/icon-right-solid-bk.svg");
height:16px;
width:10px;
background-size: cover;
top: inherit;
bottom: inherit;
left: inherit;
}
nav.global>ul.g-nav>li>a:hover:after{
width:0;
left: 0;
margin: 0;
}
nav.global>ul.g-nav{
border-top:  1px solid #AAAAAA;
}
nav.global>ul.g-nav li{
min-width: 50%;
max-width: inherit;
width: auto;
margin: 0;
padding: 0;
border-bottom: 1px solid #AAAAAA;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
nav.global>ul.g-nav li:nth-child(odd){
border-left: 1px solid #AAAAAA;
}
nav.global>ul.g-nav>li.multiple{
width: 100%;
border-left: none;
border-bottom: none;
}
nav.global>ul.g-nav li p{
display: none;
}
nav.global>ul>li ul.second{
position: relative;
height: auto;
}
nav.global>ul>li ul.second{
background-color:transparent;
position: relative;
animation: none;
transform: none;
width: 100%;
height:100%;
opacity: 1;
top: 0;
left: 0;
margin: 0;
padding: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
nav.global>ul>li ul.second li{
width: 50%;
margin: 0;
padding: 0;
}
nav.global>ul>li ul.second li:nth-child(odd){
border-left:none;
}
nav.global>ul>li ul.second li:nth-child(even){
border-left: 1px solid #AAAAAA;
}
nav.global>ul>li ul.second li a{
    cursor: pointer;
    display: flex;
    justify-content:flex-start;
    align-items: center;
    height:52px;
    width: auto;
    font-size: 1.6rem;
    color: #333;
    font-weight: bold;
    padding: 0 1em;
    border-left: none;
    border-right: none;
}
nav.global > ul > li ul.second li:nth-last-of-type(1) a {
    border-right:none;
}
nav.global>ul>li ul.second:hover,
nav.global>ul>li p:hover +ul.second{
animation: none;
transform: none;
height:100%;
opacity: 1;
}
nav.global>ul>li ul.second li a:hover{
text-decoration:none;
}
nav.global > ul > li ul.second.right {
    justify-content: flex-start;
    padding-right:0;
}
nav.global>ul.g-nav>li:nth-last-of-type(1){
margin-top: -53px;
z-index: 10002;
}
/*---------------------------------------------*
* SP用nav追加
*----------------------------------------------*/
nav.global ul.conversion{
margin:20px auto;
display: flex;
  justify-content: center;
  align-items: center;
  justify-content:space-around;
}
nav.global ul.conversion li{
width: 32%;
}
nav.global ul.conversion li img:not(.sp){
display: none;
}

nav.global ul.conversion > li a {
    width: 100%;
    height:70px;
    font-size:18px;
    line-height: 1.5;
    padding-left: 1.5em;
}
nav.global ul.conversion > li a img {
    display: block;
    position: absolute;
    right:inherit;
    top: 20px;
    height:30px;
    width: auto;
    left:1.5em;
}
ul.conversion>li img.sp,
ul.conversion>li.navy{
display: block;
}
nav.global p.time{
display:block;
color: #c0c0c0;
padding-left: 1em;
font-size: 1.2rem;
}
nav.global .nagoya.sp{
margin:1em auto 0 auto;
max-width:560px;
display: flex;
  justify-content: center;
  align-items: center;
  justify-content:space-around;
}
nav.global .nagoya.sp li{
width: 48%;
}
nav.global .nagoya.sp li a{
color: #222;
width: 100%;
max-width: 240px;
height:4.5em;
	display:flex;
	justify-content:center;
	align-items: center;
    justify-content: space-between;
      line-height: 1.5;
      border: 1px solid #C9C9C9;
      position: relative;
      -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
z-index: 0;
}
/* 2021/10/06 add */
nav.global .nagoya.sp:last-child li {
    width: 100%
}
nav.global .nagoya.sp:last-child li a {
    max-width: inherit;
    height: 4em;
}   
nav.global .nagoya.sp li a:after{
position: absolute;
content: "";
display: block;
width:100%;
height: 100%;
left: 0;
top: 0;
z-index:-1;
  transform-origin:left top;
  transform:scale(0, 1);
  transition:transform .5s;
background-color:#C9C9C9;
}
nav.global .nagoya.sp li a:hover{
color: #ffffff;
}
nav.global .nagoya.sp li a:hover:after{
  transform-origin: left top;
  transform:scale(1, 1);
  opacity: 1;
}
nav.global .nagoya.sp li a:hover svg{
fill:#ffffff;
}

nav.global .nagoya.sp a>svg{
width:12px;
height:auto;
margin:0 1% 0 3%;
fill:#C9C9C9;
}
nav.global .nagoya.sp li a div{
width:90%;
display: flex;
  justify-content: center;
  align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
nav.global .nagoya.sp li a div svg{
width:20px;
height: auto;
}
nav.global .nagoya.sp li a div span{
width: 100%;
text-align: center;
font-family: Lato,-apple-system,Noto Sans CJK JP,Noto Sans Japanese,Noto Sans JP,游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,Hiragino Kaku Gothic ProN,メイリオ,Meiryo,sans-serif;
font-size:2rem;
font-weight: bold;
}

/*---------------------------------------------*
* btn
*----------------------------------------------*/
p.btn.blue a {
    width:100%;
    max-width: 380px;    
    height: 50px;
    font-size: 1.2rem;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
/*---------------------------------------------*
* bannur
*----------------------------------------------*/
aside.bnr ul {
width:96%;
margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
aside.bnr ul li{
width: 32.5%;
}
aside.bnr ul li img{
width: 100%;
height: auto;
}
.bnr__dx {
    padding-top: 56px;
    padding-bottom: 56px;
}
.bnr__dx__box {
    max-width: 96%;
    padding: 28px 46px 33px 46px;
    flex-direction: column;
}
.bnr__dx__box .bnr__dx__box__left img {
    max-width: 293px;
    margin-bottom: 3px;
}
.bnr__dx__box__left span {
    font-size: 16px;
}
.bnr__dx__box__right {
    margin-top: 20px;
    font-size: 22.4px;
}
.bnr__dx__box__right br {
    display: none;
}
/*---------------------------------------------*
* footer
*----------------------------------------------*/
footer{
padding:0 0 15vw 0;
}
footer .f-logo{
width:98%;
max-width:inherit;
}
footer .f-logo .logo{
width: 30%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
footer .f-logo img.pc{
display: block;
max-width:100%;
width: auto;
height: auto;
}
footer .f-logo img.sp{
display: none;
}
footer .f-logo a,
footer .f-logo{
color: #fff;
}
footer .f-logo a:hover{
text-decoration: underline;
}
footer .f-logo dl{
margin:1em 0 0 0;
padding:0.5em 0 0 0;
line-height: 1.5;
clear: both;
}
footer .f-logo dl dt{
font-size: 1.6rem;
}
footer nav.f-nav{
width: 66%;
}
footer .copys{
max-width:100%;
}
    p.heading {
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        margin-top: 20px;
    } 
	
	div.recommend {
        font-size: 100%;
    } 
    
}
/* width 1200px end --------------------------------------------*/
/*---------------------------------------------*
* width 1100px
*----------------------------------------------*/
@media screen and (max-width: 1100px){
footer .f-logo .logo {
    width:36%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
footer nav.f-nav {
    width:62%;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
}
/* width 1100px end --------------------------------------------*/
/*---------------------------------------------*
* width 768px
*----------------------------------------------*/
@media screen and (max-width: 768px){
.pc{
display: none;
}
.sp{
display: block;
}
img:not(.logo){
max-width: 100%;
margin-bottom: 2vw;
}
.half-box{
margin-bottom: 2vw;
}
ul.conversion > li a {
    min-height:9vw;
    font-size:3.5vw;
}
ul.conversion>li a br{
display: block;
}
nav ul.conversion > li a {
    width: 100%;
    height:60px;
    font-size:1.6rem;
}
nav ul.conversion > li a img {
    display: block;
    position: absolute;
    right:inherit;
    height:20px;
    left: 1em;
    top: 20px;
}

/*---------------------------------------------*
* table.comparison-table-area
*----------------------------------------------*/
.comparison-table-area thead tr td, .comparison-table-area thead tr th {
    font-size: 1.4rem;
    text-align: center;
    padding-top:0.5em;
    padding-bottom:0.5em;
}
.comparison-table-area td, .comparison-table-area th {
    padding:inherit;
    min-height:3em;
}
.comparison-table-area tbody tr td,
.comparison-table-area tbody tr th {
    padding: 1.5rem 0.5em;
    font-size: 1.2rem;
    font-weight: bold;
}
.comparison-table-area tbody tr td br,
.comparison-table-area tbody tr th br {
display: none;
}
.comparison-table-area tbody br.sp{
display:block;
}

/*---------------------------------------------*
* スマホ時　続きを見る表示
*----------------------------------------------*/
.acc-btn.active,
.acc-body{
display: none;
}
.acc-btn,
.acc-body.active{
display: block;
}

/*---------------------------------------------*
* footer
*----------------------------------------------*/
footer{
margin-top: 8vw;
padding-bottom: 12vw;
display:-webkit-box;
display:-webkit-flex;
display:-ms-flexbox;
display:flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
  background-color: #ffffff;
}

footer nav.f-nav{
position: relative;
width:100%;
left:inherit;
margin:0 auto;
-webkit-box-ordinal-group:1;
-ms-flex-order:1;
-webkit-order:1;
order:1;
}
footer nav.f-nav ul{
    width: 100%;
	display:flex;
	justify-content:flex-start;
	align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
footer nav.f-nav p,
footer nav.f-nav li{
width: 100%;
border-bottom: 1px solid #c9c9c9;
}
footer nav.f-nav p,
footer nav.f-nav li a{
display: block;
width: 100%;
padding:1em 1.5em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
cursor: pointer;
position: relative;
}
footer nav.f-nav li a:hover{
text-decoration: none;
}
footer nav.f-nav p:after{
content: "＋";
color: #555555;
right: 1em;
top:6px;
font-size: 2rem;
position: absolute;
}
footer nav.f-nav p.active:after{
content: "－";
}
footer nav.f-nav ul.second{
display: none;
}
footer nav.f-nav ul.second.active{
display: block;
}
footer nav.f-nav ul.second.active li{
background-color: #EEEEEE;
}

footer .copy,
footer nav.f-nav a{
color: #222222;
}
.wrapper.address{
margin: 0 auto;
background-image: none;
-webkit-box-ordinal-group:2;
-ms-flex-order:1;
-webkit-order:1;
order:1;
}
.wrapper.address .company-name{
display: none;
}
address .contact.tels {
    padding:0 0 1em 0;
}
address .contact.tels svg.sp {
    display:block;
}
.footer-rm-comp-tel{
    color: #222222 !important;
}
address .contact.tels {
    right:inherit;
    top:inherit;
    width:100%;
    height:auto;
	display:flex;
	align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      justify-content: space-between;
}
address .contact.tels p:nth-of-type(1),
address .contact.tels p:nth-of-type(2),
address .contact.tels p:nth-of-type(3){
	display:flex;
	justify-content:center;
	align-items: center;	
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      font-size: 1rem;
      width:48%;
      min-height: 55px;
      padding: 0;
      margin:1em 0 0 0;
      border: 1px solid #c9c9c9;
      position: relative;
      cursor: pointer;
}
address .contact.tels p span.sp{
  font-size: 1rem;
display:block;
width: 9em;
}
address .contact.tels p:nth-of-type(3) a,
address .contact.tels p:nth-of-type(2) a,
address .contact.tels p a{
font-size: 1.8rem;
font-weight: 900;
margin: 0;
width: 100%;
font-family: Lato,-apple-system,Noto Sans CJK JP,Noto Sans Japanese,Noto Sans JP,游ゴシック Medium,Yu Gothic Medium,游ゴシック体,YuGothic,Hiragino Kaku Gothic ProN,メイリオ,Meiryo,sans-serif;
	display:flex;
	justify-content:center;
	align-items: center;	
}
address .contact.tels svg#nagoya {
display: block;
}
address .contact.tels p:nth-of-type(3),
address .contact.tels p:nth-of-type(2),
address .contact.tels p:nth-of-type(1) {
    padding-top:0;
    font-size: 1rem;
    -moz-text-align-last:none;
    text-align-last:none;
    text-justify:none;
    z-index: 10;
}
address .contact.tels p svg{
height: 15px;
width: auto;
margin-right: 0.5em;
}
address .contact.tels p:nth-of-type(4){
display: block;
    padding-top: 1rem;
    font-size:1rem;
    color:#888888;
    text-align: left;
    white-space: nowrap;
    width: 100%;
}
address .contact.tels p:nth-of-type(1):after,
address .contact.tels p:nth-of-type(2):after,
address .contact.tels p:nth-of-type(3):after{
position: absolute;
content: "";
display: block;
width:100%;
height: 100%;
left: 0;
top: 0;
z-index:-1;
  transform-origin:left top;
  transform:scale(0, 1);
  transition:transform .5s;
background-color:#C9C9C9;
}
address .contact.tels p:nth-of-type(1):hover,
address .contact.tels p:nth-of-type(2):hover,
address .contact.tels p:nth-of-type(3):hover{
color: #ffffff;
}
address .contact.tels p:nth-of-type(1):hover:after,
address .contact.tels p:nth-of-type(2):hover:after,
address .contact.tels p:nth-of-type(3):hover:after{
  transform-origin: left top;
  transform:scale(1, 1);
  opacity: 1;
}
address .contact.tels p:nth-of-type(1):hover svg,
address .contact.tels p:nth-of-type(2):hover svg,
address .contact.tels p:nth-of-type(3):hover svg{
fill:#ffffff;
}


aside ul.conversion > li a img {
    display: block;
    position: absolute;
    right:5px;
    height: 3.5vw;
width: auto;
}
footer{
padding-bottom:90px;
display: flex;
-webkit-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}
footer:after {
  content: ".";
  display:none;
  height: 0;
  clear: both;
  visibility: hidden;
}
footer .wrapper:after{
display: none;
}
footer .f-logo{
position: relative;
display:inline-block;
width:96%;
left:inherit;
margin:0 auto;
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order:2;
text-align: center;
}
footer .f-logo img.pc{
display: none;
}
footer .f-logo img.sp{
display: block;
width: 50%;
height: auto;
margin: 0 auto;
}
footer .f-logo .logo {
    width:100%;
    margin-bottom: 3em;
}
footer .f-logo a, footer .f-logo {
    color: #333;
    text-align: left;
}
footer .f-logo address{
max-width: 370px;
margin: 0 auto;
}
footer .f-nav .nav_group{
width: 100%;
max-width: inherit;
}
footer nav.f-nav p.subtitle {
    color: #333;
}
footer .copys{
display: block;
clear: both;
width: 100%;
margin: 3em 0 0 0;
-webkit-box-ordinal-group:3;
-ms-flex-order:3;
-webkit-order:3;
order:3;
}
footer .copys .copy {
    font-size: 1.4rem;
    line-height: 1;
    color: #333;
    font-weight: bold;
    text-align: center;
    margin-bottom: 1em;
}
footer .copys .line a{
font-size: 1.6rem;
padding: 0.25 0;
max-width: 360px;
margin: 0 auto;
}
footer .copys .line img {
margin-bottom: 0;
}
/*-----------------------
 sp_cvbtn
-------------------------*/
aside.sp_cvbtn{
display:block;
background-color: #469bc9;
width: 100%;
min-height: 58px;
position: fixed;
bottom: 0;
left: 0;
z-index: 996;
}
aside.sp_cvbtn .wrap{
display: flex;
min-height: 58px;
width: 100%;
padding:10px 0;
margin: 0 auto;
  align-items: center;
  justify-content:space-around;
background-color: transparent;
}
aside.sp_cvbtn .wrap a{
display:block;
color: #fff;
z-index: 997;
position: relative;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
min-width: 130px;
}
aside.sp_cvbtn .wrap a p,
aside.sp_cvbtn .wrap a h2{
color: #fff;
}
aside.sp_cvbtn .wrap a h2{
font-size:4.8vw;
font-weight: bold;
}
aside.sp_cvbtn .wrap a div{
font-size:4.6vw;
font-weight: bold;
color: #fff;
}
aside.sp_cvbtn .wrap a p{
font-size:2.6vw;
padding:2px 0;
}
aside.sp_cvbtn .wrap a.mail{
padding: 5px 20px;
background-color: #ff0000;
}
#page-top {
    bottom:10%;
}
}
/* width 768px end --------------------------------------------*/
/*---------------------------------------------*
* width 640px
*----------------------------------------------*/
@media screen and (max-width:640px) {
main > section:nth-last-of-type(1) .wrap{
padding-bottom: 15vw;
}
/*---------------------------------------------*
* bannur
*----------------------------------------------*/
aside.bnr ul {
    display: flex;
    justify-content: center;
    align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
    -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding:13vw 0 0 0;
}
aside.bnr ul li{
width:95%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin:0 auto 10vw auto;
}
/*---------------------------------------------*
* table.comparison-table-area
*----------------------------------------------*/
table.comparison-table-area{
width: 100%;
max-width: 100%;
border: none;
}
table.comparison-table-area tr{
    width: 100%;
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box; 
}
table.comparison-table-area tbody tr th{
border-left: none;
border-right: none;
}
.comparison-table-area thead td{
display: none;
}
table.comparison-table-area thead th{
border-top: 1px solid #aaaaaa;
width: 33%;
line-height: 1.5;
display: flex;
  justify-content: center;
  align-items: center;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
table.comparison-table-area tbody tr th{
width:99%;
border: none;
background-color: #FFFFFF;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-left: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
cursor: pointer;
position: relative;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
table.comparison-table-area tbody tr th:after{
content: "";
background-image: url("../images/icon-up-solid.svg");
width:14px;
height:8px;
display: block;
background-size: cover;
position: absolute;
right: 0.5em;
top:21px;
transform: rotate(180deg);
}
table.comparison-table-area tbody tr th.active{
background-color: #F2F4F5;
}
table.comparison-table-area tbody tr th.active:after{
transform: rotate(0deg);
}
.comparison-table-area tbody tr td{
display: none;
width: 33%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
.comparison-table-area tbody tr td:first-of-type {
    color: #1884c4;
    background-color: #f1f8fc;
border-left: 1px solid #aaaaaa;
border-right: 1px solid #aaaaaa;
border-bottom: 1px solid #aaaaaa;
}
.comparison-table-area tbody tr td.active{
display: block;
}
.comparison-table-area tbody tr:nth-last-of-type(1) td:first-of-type {
    border-bottom: 1px solid #aaaaaa;
}
/*---------------------------------------------*
* qanda
*----------------------------------------------*/
ul.qanda li p {
    width: 95%;
    line-height: 1.5;
    font-size: 1.4rem;
}
ul.qanda li a:after {
    right:0;
}
ul.qanda span.in {
    left:0px;
}
ul.qanda label {
font-size: 1.4rem;
line-height: 1.5;
    padding:30px 25px 30px 40px;
}
ul.qanda label:after {
right: 5px;
}
ul.qanda .acc-body p {
font-size: 1.4rem;
    padding: 0 0 0 10px;
}

}
/* width 640px end --------------------------------------------*/
/*---------------------------------------------*
* width 480px
*----------------------------------------------*/
@media screen and (max-width:480px) {
ul.conversion > li a {
    min-height: 4em;
    font-size:1.2rem;
}
nav ul.conversion > li a ,
nav.global>ul>li ul.second li a,
nav.global ul.g-nav a{
    font-size: 1.1rem;
    }
nav.global ul.conversion,
nav ul.conversion {
    width: 100%;
    height:50px;
    }
    
nav.global ul.conversion > li a,    
nav ul.conversion > li a {
    width: 100%;
    height:50px;
    font-size:3vw;
    font-weight: bold;
    padding-left: 2.5em;
}
nav.global ul.conversion > li a img,
nav ul.conversion > li a img {
    display: block;
    position: absolute;
    height:22px;
    right: 20px;
    top:14px;
}
nav.global .nagoya.sp li a div span,
nav .nagoya.sp li a div span{
font-size:5vw;
}


}
@media screen and (max-width:320px) {



}

.li-num{
list-style-type: decimal;
list-style-position: inside;
text-indent: -1em;
padding-left: 1em;
margin-left: 10px;
font-size:16px;

}
.li-st{
text-indent: -1em;
padding-left: 1em;
}

.font-size-16{
font-size:16px;
}


/*==============================
コラム事業者テーブル
==============================*/
.column-app-table {
    padding: initial !important;
    max-width: initial !important;
    min-width: initial !important;
    overflow-x: initial !important;
    display: table !important;
    table-layout: initial !important;
    border-collapse: initial !important;
    border-spacing: initial !important;
}

.margin-top-g {
    margin-bottom: 2em;
}

.column-app-table {
    width: 98% !important;
    font-size: 15px !important;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.column-app-table,
.column-app-table th,
.column-app-table td {
    border: 1px solid black !important;
    border-collapse: collapse !important;
    padding: .5em .75em !important;
}

.column-app-table th {
    background-color: #f5f5f5 !important;
    font-weight: bold;
}

.column-app-table a {
    color: #093bc9;
    text-decoration: underline;
}

.com-name-col {
    width: 35%
}

.scrollable-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

.scrollable-upper-subs {
    display: none;
}

@media (max-width: 768px) {
    .scrollable-upper-subs {
        display: block;
        text-align: right;
        font-size: 12px;
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    }
}

/*==============================
    入金テーブル
    ==============================*/
.payment-table {
    padding: initial !important;
    max-width: initial !important;
    min-width: initial !important;
    overflow-x: initial !important;
    display: table !important;
    table-layout: initial !important;
    border-collapse: initial !important;
    border-spacing: initial !important;
}

.margin-top-t {}

.payment-table {
    width: 98% !important;
    font-size: 15px !important;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    margin-bottom: 2em;
}

.payment-table,
.payment-table th,
.payment-table td {
    border: 1px solid black !important;
    border-collapse: collapse !important;
    padding: .5em .75em !important;
    text-align: initial !important;
    white-space: wrap !important;
}

.payment-table th {
    background-color: #f5f5f5 !important;
    font-weight: bold;
}

/*==============================
    ボックス
    ==============================*/

.box01-container {
    /* max-width: 800px; */
    width: 100% !important;
    border: 1px solid #000;
    /* padding: 20px; */
    /* margin: 20px; */
    margin-top: 35px;
    margin-bottom: 35px;
    font-family: sans-serif;
    position: relative;
}

.box01-title {
    background: #000;
    color: #fff;
    padding: 1px 10px;
    display: inline-block;
    font-size: 15px !important;
    position: absolute;
    top: -15px;
    left: 20px;
}

.box01-checklist {
    padding: 20px;
    padding-bottom: 5px;
    margin-top: 20px;
}

@media (max-width: 768px) {
    .box01-container {
        padding: 0px;
    }
}

/*==============================
    テーブル
    ==============================*/
.left-align-table td {
  text-align: left !important;
}
.left-align-table tr {
  text-align: left !important;
}
.left-align-table th {
  background-color: #f5f5f5 !important;
  text-align: left !important;
}

/*==============================
    sns-icon
    ==============================*/

.sns-icons{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    max-width: 1200px;
}
.sns-icon-01{
    display:flex;
    justify-content: flex-end;
}
.sns-icon-02{
    display:flex;
    flex-direction: row;
    gap:10px;
}
.sns-icon-02 a span{
    margin-top: 5px;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media (max-width: 768px) {
    .sns-icons{
        margin-top: 20px;
    }
    .sns-icon-01{
        justify-content: center
    }
    .sns-icon-02{
        gap:20px;
    }
    .sns-icon-02 a span{
    margin-top: 0px;
    color: #000;
    }
}

.cat_txt {
    margin: 0 0 20px;
}
.cat_txt p {
    line-height: 1.5;
}