@charset "UTF-8";
@import url(base.css);
@import url(fonts.css);
@font-face{font-family:'Noto Sans JP';font-weight:900;src:url("../font/NotoSansCJKjp-Black.woff") format("woff"), url("../font/NotoSansCJKjp-Black.otf") format("truetype");}
@font-face{font-family:'Noto Sans JP';font-weight:700;src:url("../font/NotoSansCJKjp-Bold.woff") format("woff"), url("../font/NotoSansCJKjp-Bold.otf") format("truetype");}
@font-face{font-family:'Noto Sans JP';font-weight:500;src:url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.otf") format("truetype");}
@font-face{font-family:'Noto Sans JP';font-weight:400;src:url("../font/NotoSansCJKjp-Regular.woff") format("woff"), url("../font/NotoSansCJKjp-Regular.otf") format("truetype");}

/*==========================================================================*/
/*//////////////////////////////////////////////////////////////////////////*/
/*//////                                                              //////*/
/*//////  Copyright (C) 2009 株式会社フリーセル All Rights Reserved.  //////*/
/*//////                                                              //////*/
/*//////////////////////////////////////////////////////////////////////////*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd{-webkit-text-size-adjust:none;}
input, button, textarea, select, p, blockquote, th, td, pre, li, dt, dd{font-size:160%;letter-spacing:1.5px;}
p, dt, dd, td, th, li{line-height:1.8;}
p{margin-bottom:0.5em;}
img{vertical-align:bottom;max-width:100%;height:auto;}
a{color:#333333;text-decoration:underline;}

.txtBold{font-weight:700;}
.txtBlack{font-weight:900;}
.txtRed{color:#ca0813;}
.alignCenter{text-align:center;}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html *{box-sizing:border-box;}
html{background:none;}
header, section, footer, aside, nav, main, article, figure{display:block;}
body{color:#333333;font-family:"Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;font-weight:400;}
#wrapper{width:100%;overflow:hidden;}
.sp, .sp_320, .sp_375, .sp_480{display:none;}
.pc{display:block;}
.bold{font-weight:bold;}
.fr{float:right;}
.fl{float:left;}
.tel_link{cursor:auto;}
.txt_tel{text-decoration:none;}
.v_top{vertical-align:top;}
.txt_ver{cursor:vertical-text;writing-mode:vertical-rl;-o-writing-mode:vertical-rl;-ms-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;-moz-writing-mode:vertical-rl;-webkit-writing-mode:vertical-rl;text-orientation:upright;word-wrap:break-word;}

/* to top */
#totop{position:fixed;z-index:50;margin:0;display:none;}

@media screen and (min-width:641px){
  a:hover, a:active{color:#333333;}
  a:hover{transition:all .3s;opacity:0.8;}
  #wrapper{min-width:1220px;}
  .inner{max-width:1080px;margin:0 auto;}
  .no-hover{opacity:1 !important;text-decoration:none !important;color:#333 !important;}
  .tel_link{pointer-events:none;cursor:text;}
  .bottom_bar{display:none !important;}
  #totop{right:21px;bottom:27px;}
  #totop a{transition:all .3s;}
  #totop a:hover{opacity:0.7;}
}

/*==========================================================================*/
/*                               Header                                     */
/*==========================================================================*/
header{padding:27px 0 13px;position:fixed;top:0;z-index:999;width:100%;background-color:#fff;box-shadow:0 0 40px 0 rgba(0,0,0,0.06)}
header .inner{position:relative;max-width:1500px;margin:0 auto;padding:0 40px;}
header h1{position:absolute;left:260px;top:15px;font-size:18px;font-weight:500;letter-spacing:0.1px;}
header p{line-height:28px;}
header.is-scroll{border-bottom:solid 1px #ccc;box-shadow:0 2px 5px rgba(0,0,0,0.05);}
header.is-scroll h1{display:none;}
header #logo{float:left;margin:0;}
header #logo a:hover{opacity:1 !important;}
header .h_tel{float:right;margin:0 -4px 0 0;padding:9px 0 0;}
header .h_tel span{display:inline-block;background:url("../images_2103/icon_tel.png") 0 0 no-repeat;padding:0 0 2px 30px;color:#ca0813;font-size:36px;font-weight:900;letter-spacing:0px;}
header .h_click{float:right;margin-left:20px;margin-bottom:0;}
header .h_click a{display:block;padding:10px 15px 11px 15px;background:#ca0813;color:#fff;font-size:20px;font-weight:bold;text-decoration:none;}

@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, header .h_tel span{padding-bottom:3px;background-position:0 2px;} 
}

/*==========================================================================*/
/*                              Footer                                      */
/*==========================================================================*/
footer{background:#d7d7dc;border-bottom:solid 5px #ca0813;text-align:center;padding:27px 0 31px;}
footer .ft_logo{margin:0;}
footer .ft_logo a{opacity:1 !important;}

/*==========================================================================*/
/*                            Mainvisual                                   */
/*==========================================================================*/
.mainvisual{margin:0 auto;max-width:1920px;width:100%;height:640px;box-shadow:0 -40px 40px 0 rgba(0,0,0,0.06) inset;}
.mainvisual .copyTxt{max-width:1500px;margin:0 auto;}
.mainvisual.mainA{background:url("../images_2103/img_kv01.jpg") top -60px left 40% no-repeat;}
.mainvisual.mainB{background:url("../images_2103/img_kv02.jpg") top -60px left 40% no-repeat;}
.mainvisual.mainC{background:url("../images_2103/img_kv03.jpg") top -60px left 40% no-repeat;}
.mainvisual h2{font-size:42px;font-weight:700;color:#333;line-height:1.25; padding:194px 0 72px 60px;letter-spacing:1.8px;}
.mainvisual h2 .txtXXsmall{font-size:0.81em}/* 34px */
.mainvisual h2 .txtXsmall{font-size:0.857em;}/* 36px */
.mainvisual h2 .txtSmall{font-size:0.952em;}/* 40px */
.mainvisual h2 .txtLarge{font-size:1.286em;}/* 54px */
.mainvisual h2 .txtXlarge{font-size:1.619em;line-height:1.2;}/* 68px */

.mainvisual .box_text{position:relative;padding:0 0 94px 60px;width:600px;}
.mainvisual .box_text .subTxt01{font-size:20px;letter-spacing:0;}
.mainvisual .box_text .subTxt02{background-color:#fff;
background-image:linear-gradient(#eee 1px, transparent 1px), linear-gradient(to right, #eee 1px, #fff 1px);
background-size:2px 2px;padding:0.5em 1em;text-align:center;}

/*========================================================
 main
========================================================*/
section{margin:100px auto;padding:0;}
/*========================================================
 btn
========================================================*/
.btn01{margin:0;}
.btn01 a{text-decoration:none;text-align:center;width:360px;position:relative;padding:16px 0;border-radius:10px;border-bottom:3px solid #840814;overflow:hidden;z-index:15;display:inline-block;background:#ff0000 url("../images_2103/ico_btn.png") no-repeat;background-size:auto 100%;transition:all .3s;text-shadow:0 2px #840820;}
.btn01 a:before, .btn01 a:after{content:'';position:absolute;}
.btn01 a:before{background:#ca0813;top:0;left:0;width:5px;transition:all .3s;height:100%;}
.btn01 a:after{background:url("../images_2103/ico_arrow02.png") no-repeat;background-size:auto 100%;width:10px;height:17px;right:15px;top:50%;transform:translateY(-50%);}
.btn01 a span{text-align:center;color:#fff;display:block;font-size:18px;width:100%;}
.btn01 a:hover{background-position:40px 0;opacity:1;}
.btn01 a:hover:before{width:45px;}
.btn02{margin:0;}
.btn02 a{text-decoration:none;background:#ca0813;text-align:center;width:360px;position:relative;padding:15px 46px 17px 0px;border-radius:10px;border-bottom:3px solid #840814;overflow:hidden;z-index:15;display:inline-block;letter-spacing:2px;transition:all .3s;}
.btn02 a:before{position:absolute;content:"";background:#aa0a14 url("../images_2103/ico_btn02.png") center center no-repeat;width:50px;height:60px;right:0;top:0;}
.btn02 a span{text-align:center;color:#fff;display:block;font-size:18px;width:100%;}
.btn02 a:hover{opacity:1;transform:translateY(-15px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.3);}

/*========================================================
 .index01
========================================================*/
.index01 h3{text-align:center;position:relative;margin-bottom:59px;font-weight:900;font-size:32px;color:#ca0813;letter-spacing:3.8px;}
.index01 h3 :before{position:absolute;content:"";width:100%;height:2px;background:#ca0813;left:0;top:50%;transform:translateY(-50%);z-index:-1;margin-top:1px;}
.index01 h3 span{display:inline-block;background:#fff;padding:0 24px;}
.index01 .ntt_list{display:flex;flex-wrap:wrap;}
.index01 .ntt_list li{width:240px;height:110px;background:url("../images_2103/index_img06.jpg") center center no-repeat;color:#fff;display:flex;justify-content:center;align-items:center;font-size:18px;line-height:1.3em;text-align:center;margin-right:40px;letter-spacing:0px;}
.index01 .ntt_list li:nth-child(4n+0){margin-right:0;}
.index01 .ntt_list li .number{display:inline-block;padding:0 4px;}
/*========================================================
 .index02
========================================================*/
.index02 h3{font-size:24px;font-weight:700;text-align:center;position:relative;margin-bottom:2em;}
.index02 h3:before{content:"";position:absolute;background:#ca0813;width:40px;height:2px;bottom:-12px;left:calc(50% - 20px);}
.index02 .layoutItem{display:flex;justify-content:center;align-items:center;background-color:#fff;
background-image:linear-gradient(#eee 1px, transparent 1px), linear-gradient(to right, #eee 1px, #fff 1px);
background-size:2px 2px;
}
.index02 .layoutItem .txtBox{width:63%;padding:0 60px;}
.index02 .layoutItem p{;margin-bottom:0;}
/*========================================================
 .index03
========================================================*/
.index03 p{font-size:24px;}

/*========================================================
 .index04
========================================================*/
.index04 h3{font-size:28px;font-weight:900;line-height:1;border-bottom:solid 1px #ca0813;padding-bottom:12px;position:relative;margin-bottom:48px;}
.index04 h3:before{content:'';width:23px;height:23px;transform:rotate(45deg) translateX(-50%);border-right:solid 1px #ca0813;border-bottom:solid 1px #ca0813;position:absolute;left:100px;bottom:-20px;background:#fff;box-sizing:border-box;margin-left:-4px;}
.index04 .box_list{display:flex;flex-wrap:wrap;}
.index04 .item{margin:0;padding:0 30px;border-right:1px solid #ccc;width:calc(100% / 3);}
.index04 .item:first-child{padding-left:0;}
.index04 .item:nth-child(3n+0){padding-right:0;border-right:none;}
.index04 .item h4{background:#333;font-size:20px;font-weight:500;color:#fff;padding:0.5em 1em;position:relative;margin-bottom:1.2em;display:inline-block;}

/* table */
table{width:100%;}
table th, table td{border:none;box-sizing:border-box;padding:0.5em 0 0;text-align:left;vertical-align:top;}
table th{font-weight:500;width:calc(4em + 8px);color:#ca0813;}
table td{padding-left:20px;}

.index04 .btn01{margin:100px 0 33px;}

/*==========================================================================*/
/*                             Under Page                                 	*/
/*==========================================================================*/
