@charset "UTF-8";

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,
legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}

html {
  overflow: auto;
}
body {
  -webkit-print-color-adjust: exact;
  overflow:hidden;
  font-size: 16px;
  line-height:1.5;
  color:#000;
  background-color:#fafafa; 
  font-family: 'Zen Kaku Gothic New', sans-serif;
  

}

input,select,textarea,button{
  font-family: 'Zen Kaku Gothic New', sans-serif;
}
/* IE hack */
_:-ms-input-placeholder, :root 
body {
  font-family: 'Zen Kaku Gothic New', sans-serif;
}
_:-ms-input-placeholder, :root 
input,select,textarea,button{
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

body,h1,h2,h3,h4,h5,p,ul,ol,li,dl,dd,dt{margin:0;padding:0px;}

p{

}

li {
  list-style: none;
  margin: 0;
  padding: 0;
}


a {
  text-decoration: none; 
  color:#292929;
}
a:hover {
  text-decoration: none;
}
/*a img:hover { opacity: 0.9; -moz-opacity: 0.9;}*/
a img {
  border-style:none;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

button{
  background-color: transparent;
  border: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

textarea{
  resize: vertical;
  min-height: 3em;
  max-height: 25em;
  height: 10em;
}

button:focus,
input:focus,
select:focus,
textarea:focus{
  outline: none;
}
button:hover{
  cursor:pointer
}

table{
  border-collapse: collapse;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/*--------------------------------------------------------
定数 ※個別設定
--------------------------------------------------------*/



/*共通設定*/
.pc-none{
  display: none;
}

.row{
  width:100%;
  margin:0 auto;
  text-align:center;
}
.in_row{
  width:1100px;
  margin:0 auto;
  text-align:center;
}



/* IE hack */
_:-ms-input-placeholder, :root 
.boxsample {
  display: flex; /* 子要素をflexboxで揃える */
  flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
  justify-content: center; /* 子要素をflexboxにより中央に配置する */
  align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
/*firefox hack*/
@-moz-document url-prefix() {
  div.boxsample{
  -webkit-border-radius: 5px;/* for Safari and Chrome */
  -moz-border-radius: 5px; /* for Firefox */
  -o-border-radius: 5px; /* for opera */
  border-radius: 5px;
  }
}


/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/
div.head_main{
  width: 100%;
  position:relative;

}
div.head_main img{

}
div.head_in{
width:100%;
background-color: #ffa4a4;
padding:0 0 0 20px;
box-sizing:border-box;
display:flex;
justify-content:flex-start;
align-items:stretch;
}
div.head_logo_area a{
padding:15px 0 15px;
display:flex;
align-items: center;
}
div.head_logo_area a p{
font-size:26px;
line-height: 26px;
font-weight:bold;
color:#fff;
}
div.head_logo_area a p span{
font-size:10px;
line-height: 14px;
font-weight:bold;
color:#fff;
display: block;
}
div.head_logo_area a img{
height: 40px;
margin: 0 0 0 10px;
}
div.head_logo_area a:hover{
opacity:0.8;
}

div.head_navi_area{
  margin-left:auto;
  display:flex;
  justify-content:flex-end;
  align-items:center;
}



/*--------------------------------
ナビゲーション
---------------------------------*/
.hamburger{
  display:none;
}
.globalMenuSp{

}
.globalMenuSp ul{
  display:flex;
  justify-content:center;
  align-items:center;
  margin-right:20px;
}
.globalMenuSp ul li{
  padding:0 12px 0;
  font-weight: 600;
  letter-spacing: 2px;
  
}
.globalMenuSp ul li a{
  font-size:15px;
  position:relative;  color:#fff;
}

.globalMenuSp ul li a:hover{
  color:#eeeeee;
}
.globalMenuSp ul li:last-child a:after{
  display:none;
}

div.contact_btn{
background:#339900;
width:240px;
padding:0 0 0 20px;
height:100%;
display:flex;
align-items:center;
justify-content:center;
background-image:url(../images/line_icon.png);
background-repeat:no-repeat;
background-position:left 20px center;
background-size: 35px;
}
div.contact_btn a{
letter-spacing: 2px;
font-weight: 600;
font-size:16px;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
height:100%;
width:100%;
}

div.contact_btn a:hover{
opacity:0.8;
}
/*--------------------------------------------------------
kv
--------------------------------------------------------*/
div.kv{
width:100%;
padding:60px 0;
 background-image: 
    linear-gradient(135deg, rgba(255, 164, 164, 0.4), rgba(255, 188, 188 , 0.4)), /* ← 赤→青のグラデ */
    url('../images/kv_bg.jpg');
/*background-image:url(../images/kv_bg.jpg);*/
background-repeat:no-repeat;
background-position:top top;

background-size:cover;
}
.kv_in{
display:flex;
align-items: center;
justify-content:space-between;
width:1100px;
margin: 0 auto;
}
.kv_right{
width: 40%;
display:flex;
align-items: baseline;
justify-content:space-between;
}

.kv_right div{width: 48%;}
.kv_right div img{width: 100%;}


.kv_left{
width: 100%;
}
.kv_left h1{
text-align: center;
font-size:55px;
line-height: 55px;
}
.t_s_t_01{
color:#ff0000;
font-size:124px;
line-height:164px;
letter-spacing:3px;
}
.t_s_t_02{
font-size:80px;
}
.kv_left div img{
width: 100%;
margin: 0 0 20px 0;
}
.kv_left h2{
text-align: center;
font-size:30px;
line-height:30px;
letter-spacing:2px;
background-color: #ffa4a4;
color:#fff;
border-radius: 100px;
padding: 20px;
margin-top:20px;
}
.kv_left h2 span{font-size:44px;}


/*--------------------------------------------------------
フッター
--------------------------------------------------------*/
div.footer{
background-color: #ffa4a4;
}
div.footer_in{
width: 1100px;
margin: 0 auto;
padding:40px 0;
display:flex;
align-items:center;
}
div.foot_logo{
  width:30%;
  padding:0px 5% 0 0px;
  border-right:1px solid #fff;
}
div.foot_logo img{
width:80%;
margin: 10px 0 0 0;
}
div.foot_logo a p{
font-size:26px;
line-height: 26px;
font-weight:bold;
color:#fff;
}
div.foot_logo a p span{
font-size:10px;
line-height: 14px;
font-weight:bold;
color:#fff;
display: block;
}

.foot_data{padding:0px 0 0 6%;}

ul.foot_nav{
  text-align:center;
  display:flex;
  align-items:center;
  padding:0 0px 30px 0;
}
ul.foot_nav li{
  margin-right:10px;
  padding:0 20px 0 0;
  position:relative;
}

ul.foot_nav li a{
  color:#fff;
  font-size:16px;
  font-weight: 600;
}
ul.foot_nav li a:hover{color:#eee;}

.foot_location{
  display:flex;
  align-items:center;
  text-align: left;
  color:#fff;
}
.foot_location div{
  padding:0 30px 0 0px;
}

div.foot_copy{
  padding: 20px 0 20px;
}
.foot_copy h5{
  font-size:12px;
  font-weight:normal;
  
}

/*page top*/
#page_top{
  width: 39px;
  height: 39px;
  border-radius: 5px;
  /*border:1px solid #000;*/
  position: fixed;
  right: 10px;
  bottom: 10px;
  /*background: #eaeaea;*/
  opacity: 0.8;
}
#page_top a{
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
  text-decoration: none;
  
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 24px;
  color: #292929;
  position: absolute;
  top: 0;
  bottom: 20px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*--------------------------------------------------------
コンテンツ
--------------------------------------------------------*/
div.title_area{
  padding:0 0 60px 0;
}
div.title_area h2{
font-size:36px;
text-align: center;
letter-spacing: 3px;
font-weight:600;
color:#000;
}
div.title_area_s h2{
font-size:26px;
text-align: center;
letter-spacing: 3px;
font-weight:600;
color:#000;
}


/*buy_list*/
.buy_list{
  width:1100px;
  margin:0 auto;
  padding:0px 0 0px;
  margin:60px auto;
  background-color: #fff;
  border: 5px solid #ffa4a4;
  border-radius: 20px;
  box-sizing: border-box;
}
.buy_list h2{
font-size:36px;
text-align: center;
letter-spacing: 3px;
font-weight:600;
color:#fff;
background-color: #ffa4a4;
padding:10px 0px 15px 0px;
}

.buy_list ul{
display: flex;
justify-content: space-between;
padding:5%;
}
.buy_list ul li{width:24%;text-align: center;}
.buy_list ul li img{width:90%;margin:0px auto;}
.buy_list ul li h3{
font-size:14px;
text-align: center;
letter-spacing:0px;
font-weight:600;
margin: 20px 0;
}
.buy_list ul li p{
font-size:24px;
text-align:center;
letter-spacing:0px;
font-weight:600;
color:red;
}


/*flow*/
.flow{
  padding:60px 0 60px;
}
.flow_box{
width:1100px;
margin:0 auto;
text-align: center;
display: flex;
justify-content: space-between;
}
.flow_box li{
width:23%;
background-color: #fff;
border: 5px solid #ffa4a4;
border-radius: 20px;
box-sizing: border-box;
padding: 25px;
position: relative;
}
.flow_box li div{
position: absolute;
left: 50%;
transform: translateX(-50%);
top:-20px;
background-color:#ffa4a4;
border-radius:100px;
font-size:18px;
color:#fff;
font-weight:600;
letter-spacing:2px;
padding:10px 25px;
text-align: center;
}
.flow_box li img{
width: 100%;
margin: 15px 0;
}
.flow_box li h3{
font-size:24px;
color:#ffa4a4;
text-align: center;
letter-spacing:1px;
font-weight:600;
margin:0 0 5px 0;
}
.flow_box li p{
text-align:left;
font-size: 16px;
line-height: 1.7;
}

/*cv*/
.cv a{
display: inline-block;
width: 1100px;
margin:30px auto;
background-color:#ffa600;
border-bottom:10px solid #ba9756;
border-radius:200px;
padding: 40px;
box-sizing: border-box;
}
.cv a:hover{
opacity: 0.8;
}
.cv a p{
font-size: 18px;
letter-spacing: 2px;
font-weight: 600;
padding: 10px 25px;
display: inline-block;
color: #ba9756;
background-color:#fff;
border-radius:100px;

}
.cv a h3{
font-size:58px;
line-height: 58px;
letter-spacing:3px;
font-weight: 600;
padding: 10px 25px;
display: inline-block;
color: #fff;
margin: 20px 0 0 0 ;
}
.cv a h3 img{
display: inline-block;
width: 60px;
vertical-align: middle;
margin: -10px 20px 0 0;
}


/*card_list*/
.bg_e9e6d7{
background-color: #e9e6d7;
}
.card_list{
  padding:60px 0 60px;
}
.card_list_box{
width:1100px;
margin:0 auto;
text-align: center;
display: flex;
flex-wrap: wrap;
}
.card_list_box img{
width:14%;
margin:0 1.3% 25px 1.3%;
}
p.what_text{
  font-size:18px;
  text-align:center;
  line-height:2;
  padding:20px 0;
}
p.what_text span{
  font-size:24px;
  color:red;
  font-weight:bold;
}


/*about*/
div.about{
  padding:80px 0 80px;
}
div.about_text{
  width:1100px;
  margin:0 auto;
  display:flex;
  justify-content:flex-start;
  align-items:center;
  border:4px solid #00365c;
  padding:40px;
  box-sizing:border-box;
}
div.about_text p{
  text-align:left;
  font-size:16px;
  line-height:1.7;
}
div.about_text p span{
  color:#00365c;
  font-weight:500;
}



/*sv*/
div.service{
  padding:40px 0 40px;
  background:#f9f9f9;
}
div.title_area_sv{
  padding:20px 0 20px;
}
div.title_area_sv h2{
  display: inline-block;
  position: relative;
  font-size:30px;
  color:#00365c;
  text-align:center;
}
div.title_area_sv h2:before{
  content: '';
  position: absolute;
  left: 50%;
  bottom: -15px; /*下線の上下位置調整*/
  display: inline-block;
  width: 50px; /*下線の幅*/
  height: 2px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #00365c; /*下線の色*/
}


div.sv_in{
  padding:40px 0;
}
ul.sv_list{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;

}
ul.sv_list li{
  width:31%;
}
ul.sv_list li h3{
  font-size:20px;
  color:#00365c;
  padding:15px 0 15px;
}
ul.sv_list li p{
  font-size:14px;
  color:#000;
  text-align:left;
  line-height: 1.8;
  display: block;
}



/*company*/
div.company{
  padding:40px 0;
}
div.com_wrap{
  padding:40px 0 60px;
}
div.title_area_com{
  padding:0px 0 0px;
}
table.com_tb{
  width:80%;
  margin:0px auto 0;
  border-collapse:collapse;
  border:1px solid #222;
}
table.com_tb th{
  width:25%;
  border-collapse:collapse;
  font-size:14px;
  padding: 20px;
  vertical-align:top;
  background-color: #ffa4a4;
  border:1px solid #222;
  color:#fff;
}
table.com_tb td{
  font-weight:500;
  border-collapse:collapse;
  font-size:14px;
  text-align:left;
  padding: 20px;
  border:1px solid #222;
  color:#111;
}

/*contact*/
div.contact{
padding:40px 0 40px;
background-image:url(../images/cv_bg.jpg);
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
}
div.contact_text{
  padding: 40px 0 0px;
}
div.contact_text h3{
  font-weight:500;
  font-size:18px;
  color:#fff;
  padding:0 0 30px 0;
}
div.contact_text h4{
  font-weight:500;
  font-size:18px;
  color:#fff;
  padding:0 0 30px 0;
}
div.contact_text h4 span{
  font-weight:500;
  font-size:36px;
}

.wh h2{
  color:#fff !important;
}
.wh  h2:before{
  background-color: #fff !important; /*下線の色*/
}

.cta_btn{
  display:block;
  width:250px;
  padding: 18px 0;
  color: #00365c;
  margin: 0 auto 30px;
  background-color: #fff;
  border-radius: 5px;
  transition: all 0.7s ease;
  text-align:center;
  letter-spacing: 2px;
  font-size:16px;
  font-weight:600;

}
.cta_btn:hover{
  background:#fff;
  color: #00365c !important;
}


/*//////////////////////////////////
//下層ページ
//////////////////////////////////*/

.privacy_wrap {
  padding: 15px;
  box-sizing: border-box;
  text-align: left;
  width: 80%;
  
  margin: 0 auto;
}
.privacy_wrap h4{
  font-weight:bold;
  
}

.privacy_title{

}


.icon-box {
  text-align: center;
  font-size: 60px;
  color: #333;
  margin-top: 30px;
  margin-bottom:30px;
}

