@charset "UTF-8";

/*----------------
reset
----------------*/
*{margin: 0;padding: 0;}
input, button, textarea, select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0;
padding: 0;
background: none;
border: none;
border-radius: 0;
outline: none;
}
ul{list-style-type: none}
img{max-width: 100%;height: auto;}

/*----------------
baseLayout
----------------*/
html {
font-size: 62.5%;
min-height: 100%;
position: relative;
font-family: 'Microsoft Yahei','PingHei','Malgun Gothic','Yoon Gothic','Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
}
body {
font-size: 14px;font-size: 1.4rem;
line-height: 1.6;
background: #fff;
color: #666;
min-height: 100%;
margin-bottom: 256px;
}
a,a:visited{
color: #ca2033;
text-decoration: underline;
}
a:hover,a:active{
color: #666;
text-decoration: none;
}

b{color: #333;}
.bold{font-weight: bold;}

/*--header--*/
header{
width: 100%;
padding: 20px 0;
position: fixed;
background: #fff;
z-index:999;
top:0;
}
body.index header{background: #f2f2f2;}
header a{text-decoration: none;}
header .logo{
width: 80px;
}
header .logo img{
width: 100%;
height: auto;
}
nav .menu{
display: table;
}
nav .menu li{
display: table-cell;
padding-left: 12px;
padding-top: 20px;
font-size: 12px;font-size: 1.2rem;
}
header .sbumenu{
margin-left: auto;
text-align: right;
font-size: 10px;font-size: 1rem;
}
header .sbumenu .login,.drawer-menu .login{
background: url(../images/icon-lock.svg) left no-repeat;
background-size: 10px 10px;
padding-left: 14px;
display: inline-block;
margin-right: 10px;
}
header .sbumenu p a{
padding-right: 5px;
}
header .sbumenu ul.snsArea{
margin-top: 5px;
}
header .sbumenu ul.snsArea li{
display: inline;
margin-left: 5px;
}
header .sbumenu ul.snsArea li img{
height: 30px;
}
/*--menu--*/
.pcmenu{
width: 90%;
max-width: 1100px;
margin: 0 auto;
display: flex;
}
.spmenu{display: none;}

/*--section--*/
section:first-of-type,section.contents:first-of-type,section.data:first-of-type{
margin-top: 120px;/*header分*/
}
section.contents{
margin: 0 auto;
width: 90%;
max-width:1100px;
}
section.data{
background: #ca2033;
padding: 25px;
color: #fff;
text-align: center;
}

/*--footer--*/
footer{
width: 100%;
background: #333;
color: #fff;
padding: 25px 0 0;
position: absolute;
bottom: 0;
}
footer a,footer a:visited{
color: #fff;
text-decoration: none;
font-size: 12px;font-size: 1.2rem;
}
footer a:hover{
color: #ccc;
}
footer .footermenu{
width: 90%;
max-width: 1100px;
margin: 0 auto 25px;
display: flex;
}
footer .footermenu div{
font-size: 14px;font-size: 1.4rem;
}
footer .footermenu div img{
width: 64px;
height: auto;
}
footer .footermenu div p{
margin-top: 10px;
}
footer .footermenu dl{
margin-left: 40px;
}
footer .footermenu dt{
font-weight: bold;
}
footer .footermenu dt a{
font-size: 12px;font-size: 1.2rem;
}
footer .footermenu ul.snsArea{
width: 170px;
margin-left: auto;
}
footer .footermenu ul.snsArea li{
display: inline;
margin-left: 5px;
}
footer .footermenu ul.snsArea li img{
height: 30px;
}
footer .copyright{
width: 100%;
background: #000;
}
footer .copyright p{
display: block;
width: 90%;
max-width: 1100px;
margin: 0 auto;
font-size: 12px;font-size: 1.2rem;
padding: 15px 0;
}

/*----------------
common
----------------*/

/*--title--*/
.titleLL{
font-size: 42px;font-size: 4.2rem;
line-height: 1.3;
font-weight: bold;
color: #333;
}

.titleL{
font-size: 32px;font-size: 3.2rem;
line-height: 1.3;
font-weight: bold;
color: #333;
}
.titleM{
font-size: 24px;font-size: 2.4rem;
line-height: 1.3;
font-weight: bold;
color: #333;
}
.titleS{
font-size: 18px;font-size: 1.8rem;
line-height: 1.3;
font-weight: bold;
color: #333;
}

/*--headline--*/
.headlineL{
font-size: 18px;font-size: 1.8rem;
line-height: 1.3;
font-weight: bold;
}
.headlineM{
font-size: 16px;font-size: 1.6rem;
font-weight: bold;
}

/*--text--*/
.txtLL{font-size: 24px;font-size: 2.4rem;}
.txtM{font-size: 14px;font-size: 1.4rem;}
.txtS{font-size: 12px;font-size: 1.2em;}
.alC{text-align: center;}
.alL{text-align: left;}
.annotation{font-size: 14px;font-size: 1.4rem;color: #999;}

/*--float--*/
.flArea{overflow: hidden;}
.flL{float: left;}
.flR{float: right;}
.flC{clear: both;}
.flL img{margin-right:30px;}
.flR img{margin-left: 30px;}

/*--margin--*/
/*top*/
.mgtLL{margin-top: 100px;}
.mgtL{margin-top: 70px;}
.mgtM{margin-top: 50px;}
.mgtS{margin-top: 30px;}
.mgtSS{margin-top: 20px;}
/*bottom*/
.mgbL{margin-bottom: 70px;}
.mgbM{margin-bottom: 50px;}
.mgbS{margin-bottom: 30px;}
.mgbSS{margin-bottom: 20px;}

/*--padding--*/
/*top*/
.pdtL{padding-top: 70px;}
.pdtM{padding-top: 50px;}
.pdtS{padding-top: 30px;}
/*bottom*/
.pdbL{padding-bottom: 70px;}
.pdbM{padding-bottom: 50px;}
.pdbS{padding-bottom: 30px;}

/*--button--*/
a.btn,input.btn,button.btn{
color: #fff;
padding: 25px 35px;
border-radius: 6px;
text-align: center;
font-weight: bold;
font-size: 20px;font-size: 2rem;
display: inline-block;
text-decoration: none;
cursor : pointer;
}
.btnMain,input.btnMain{background: #ca2033;}
.btnSub,input.btnSub{background: #666;}
.btnMain:hover{background: #a92033;}
.btnSub:hover{background: #505050;}
input.btn{margin-top: 50px;}

/*--Decoration--*/
.decoration{
border: 1px solid #ccc;
background: #f2f2f2;
}

/*--slider--*/
.slider{
overflow: hidden;
position: relative;
}
.slider .siema,
.slider .siema2,
.slider .siema3{
width: calc(100% - 80px);
margin:10px auto;
}
.slider p.btnPrev,
.slider p.btnNext{
width: 15px;
height:30px;
display: block;
position: absolute;
top: 50%;
transform: translateY(-50%);
}
.slider p.btnPrev{left:0}
.slider p.btnNext{right:0;}

.slideContent{
overflow:hidden;
width:100%;
margin:0 auto;
}
.slideContent .split2{
width: calc(100% / 2);
}
.slideContent .split3{
width: calc(100% / 3);
}
.slideContent .split4{
width: calc(100% / 4);
}
.slideContent .split5{
width: calc(100% / 5);
}
.slideContent div{
float:left;
padding: 10px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
}
.slideContent div img{
border: 1px solid #ccc;
max-width:100%;
}
.pcslide{display: block;}
.spslide{display: none;}


/*----------------
index
----------------*/
.index{background: url(../images/background-top.png) top left repeat-x;}

.indexMain{position: relative;}
.indexMain .flR img{width: 500px;max-width: 100%;}
.indexCatch{
width: calc(100% - 530px);
/*position: absolute;
top: 50%;
transform: translateY(-50%);*/
}
.indexBtn{
clear:both;
padding:30px 80px 0 0;
text-align: right;
}
.indexBtn a.btn{
width: 300px;
padding: 20px;
font-size: 16px;font-size: 1.6rem;
}
.topTotalNumber{
display: flex;
justify-content:space-around;
}
.topTotalNumber dl{
margin: 30px 20px 0 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
width: 50%;
}
.topTotalNumber dt{
text-align: center;
color: #666;
font-size: 24px;font-size: 2.4rem;
}
.topTotalNumber dd{
font-size: 40px;font-size: 4rem;
font-weight: bold;
color: #ca2033;
text-align: center;
}

/*----------------
form
----------------*/
section.inquiryArea{
width: 90%;
max-with:900px;
margin: 0 auto;
}
section.inquiryArea input[type="text"] ,
section.inquiryArea input[type="email"]{
background: #fff;
border: 1px solid #ccc;
padding: 10px;
}
.formArea{
padding:40px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}


/*--スマホ切り替え--*/
@media screen and (max-width:740px){

body {margin-bottom: 0;}

/*--header--*/
header{padding: 0;}
header .logo{width: 80px;height: 40px;}
.pcmenu{display: none;}
.spmenu{display: flex;}
.logo{width: 60px;height: auto;margin: 10px;}
.drawer-hamburger{
background: #333;
position:relative;
margin-left: auto;
padding: 18px 2rem 30px 1rem;
}
.drawer-hamburger:hover{background: #333;}
.drawer-hamburger-icon{width: 3rem;}
.drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before{background:#fff;}
.drawer--right.drawer-open .drawer-hamburger{right:30rem;}
.drawer--right .drawer-nav{right:-30rem;}
.drawer-nav{width:30rem;}
nav .drawer-menu{padding: 10px 0;}
nav .drawer-menu li a{
font-size: 16px;font-size: 1.6rem;
display: block;
padding: 5px 10px;
}
nav .drawer-menu li.language a{display: inline;}
nav .drawer-menu li.language{margin-top: 10px;}
.drawer-menu .login{margin: 10px 0 0 10px;padding-left:15px;}
.drawer-menu .snsArea{overflow: hidden;margin-top: 10px;}
.drawer-menu .snsArea span{display: block;float: left;}
.drawer-menu .snsArea span img{height: 30px;width: auto;}

/*--footer--*/
footer{position: relative;padding: 0;}
footer .footermenu{display: block;width: 100%;margin: 0;}
footer .footermenu > div{
overflow: hidden;
padding: 10px;
border-bottom: 1px solid #666;
}
footer .footermenu .footerLogo,footer .footermenu .address{float: left;}
footer .footermenu .footerLogo{margin-right: 10px;}
footer .footermenu .address{width: calc(100% - 80px);font-size: 12px;font-size: 1.2rem;}
footer .footermenu .address p:first-of-type{margin-top: 0;}
footer .footermenu dl{
margin: 0;
padding: 10px;
border-bottom: 1px solid #666;
}
footer .footermenu dl a{
display: block;
padding: 5px;
}
footer .footermenu ul.snsArea{
width: 90%;
margin: 20px auto 10px;
text-align: center;
}
footer .footermenu ul.snsArea li{margin-left: 10px;}
footer .footermenu ul.snsArea li img{height: 40px;}
footer .copyright p{font-size: 10px;font-size: 1rem;}

/*--button--*/
a.btn,input.btn,button.btn{
font-size: 16px;font-size: 1.6rem;
padding: 20px 15px;
display: block;
width: 70%;
margin: 10px auto;
}
input.btn{margin-top: 20px;}

.flL,.flR{float: none;}
.flL img,.flR img{margin:0 auto;text-align:center;display: block;}

/*--section--*/
section:first-of-type,section.contents:first-of-type,section.data:first-of-type{
margin-top: 70px;/*header分*/
}
section.data{padding: 10px;}

/*--slider--*/
.slideContent div img{max-width:100%;}
.pcslide{display: none;}
.spslide{display: block;}

/*--margin--*/
/*top*/
.mgtLL{margin-top: 70px;}
.mgtL{margin-top: 50px;}
.mgtM{margin-top: 30px;}
.mgtS{margin-top: 20px;}
.mgtSS{margin-top: 10px;}

/*bottom*/
.mgbL{margin-bottom: 50px;}
.mgbM{margin-bottom: 30px;}
.mgbS{margin-bottom: 20px;}
.mgbSS{margin-bottom: 10px;}

/*--padding--*/
.pdtL{padding-top: 50px;}
.pdtM{padding-top: 30px;}
.pdtS{padding-top: 20px;}
.pdbL{padding-bottom: 50px;}

/*--title--*/
.titleLL{font-size: 30px;font-size: 3rem;}
.titleL{font-size: 26px;font-size: 2.6rem;}
.titleM{font-size: 20px;font-size: 2rem;}
.titleS{font-size: 16px;font-size: 1.6rem;}

/*--text--*/
.txtLL{font-size: 20px;font-size: 2rem;}
.txtRed{color: #ca2033;}

/*--index--*/
.index{background-size:1280px 275px;}
.indexCatch{
width: 100%;
position: relative;
top:auto;
transform: translateY(0%);
margin-top: 20px;
}
.indexMain .flR{text-align: center;}
.indexBtn{
text-align: center;
padding: 30px 0;
}
.indexBtn a:first-of-type{margin-right: auto;}
.indexBtn a.btn{
display: block;
width: 70%;
margin: 10px auto;
}
.topTotalNumber dl{
margin-top: 20px;
width: auto;
text-align: center;
}
.topTotalNumber dt{
font-size: 16px;font-size: 1.6rem;
}
.topTotalNumber dd{
font-size: 30px;font-size: 3rem;
}

}