/*/////////////////////////////////////////////
// スマホ用レイアウト
//////////////////////////////////////////////*/
@media screen and (max-width: 767px) {
/* 767pxまでの幅の場合に適応される */



html{
height: -webkit-fill-available;
}
body{
min-height: 100vh;
min-height: -webkit-fill-available;
}

a,
a:visited {
text-decoration: none;
transition: unset;
}
a {
-webkit-tap-highlight-color:rgba(0,0,0,0);
cursor:pointer;
}
*:focus {
outline: none;
}

/*共通設定*/
.pc-none{
display: block !important;
}
.sp-none{
display: none !important;
}

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

/*--------------------------------------------------------
ヘッダー
--------------------------------------------------------*/
div.head_main{
width: 100%;
height:500px;
min-height:0;
background-image:linear-gradient(180deg, rgba(255,255,255,0.8) 0%, rgba(255,255,255,0.6) 55%, rgba(255,255,255,0) 85%), url(../images/kv_bg.png);
background-repeat:no-repeat;
background-position:center center;
background-size: cover;
position:relative;
}
div.head_main_low{
width: 100%;
position:relative;
}
div.head_in{
width:100%;
height:60px;
background:#fff;
padding:0 10%;
box-sizing:border-box;
display:flex;
justify-content:flex-start;
align-items:center;
}
div.head_logo_area a{
display:block;
line-height:0;
}
div.head_logo_area img{
width: 150px;
margin:0;
}
div.head_navi_area{
margin-left:auto;
}
div.head_text{
width: 80%;
margin:0;
top:48%;
}
div.head_text img{
width:200px;
margin: 0;
}
div.head_text p{
text-align:left;
font-size:11px;
font-weight:400;
padding:0px 0 0 0px;
line-height:1.8;
letter-spacing: 2px;
margin:14px 0 0 0;
}
div.head_text h1{
font-size:19px;
padding:32px 0 0 0;
line-height:1.8;
letter-spacing: 3px;
margin:0 0 0;
}



.globalMenuSp{
/*display:none;*/
}
/*　ハンバーガーボタン　*/
.hamburger {
display : block;
position: fixed;
z-index : 3;
right : calc(10% - 16px);
top   : 12px;
width : 42px;
height: 42px;
cursor: pointer;
text-align: center;
}
.hamburger span {
display : block;
position: absolute;
width   : 20px;
height  : 1px ;
left    : 6px;
background : #20A7B4;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
top: 15px;
}
.hamburger span:nth-child(2) {
top: 20px;
}
.hamburger span:nth-child(3) {
top: 25px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
top : 16px;
left: 6px;
-webkit-transform: rotate(-45deg);
-moz-transform   : rotate(-45deg);
transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 16px;
-webkit-transform: rotate(45deg);
-moz-transform   : rotate(45deg);
transform        : rotate(45deg);
}

nav.globalMenuSp {
position: fixed;
z-index : 2;
top  : 0;
left : 0;
color: #303840;
background: #fff;
height:100%;
padding: 40px 0 0 0;
text-align: center;
transform: translateX(100%);
transition: none;
width: 100%;
}
/* 開閉時のみアニメーション（jQueryで付与・画面幅変更時に解除） */
nav.globalMenuSp.is-anim {
transition: transform 0.6s;
}

nav.globalMenuSp ul {
display:flex;
justify-content:flex-start;
align-items:center;
flex-direction:column;
margin: 0 auto;
width: 80%;
}

nav.globalMenuSp ul li {
text-align:left;
list-style-type: none;
padding: 0;
padding-left:20px;
box-sizing:border-box;
width: 100%;
border-bottom: 1px solid #eee;
position:relative;
}
nav.globalMenuSp ul li:before{
position: absolute;
top: 26px;
left: 0px;
transform: translateY(-50%);
width: 0px;
height: 0px;
border: 0.2em solid transparent;
border-left: 0.2em solid #20A7B4;
content: "";
}


nav.globalMenuSp ul li:last-child {
padding-bottom: 0;
border-bottom: none;
}
nav.globalMenuSp ul li:hover{
background :#F5F8F9;
}

nav.globalMenuSp ul li a {
display: block;
color: #303840;
padding: 1em 0;
text-decoration :none;
font-size:13px;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
transform: translateX(0%);
}
.globalMenuSp ul li a:after{
display:none;
}





/*--------------------------------------------------------
フッター
--------------------------------------------------------*/
div.footer{

}
div.footer_in{
padding:10px 0 20px 0;
}
ul.foot_nav{
width:80%;
margin:20px auto 0;
text-align:center;
display:flex;
justify-content:center;
align-items:center;
flex-wrap:wrap;
flex-direction:column;
}
ul.foot_nav li{
width:100%;
margin: 0 auto;
padding:10px 0;
box-sizing:border-box;
border-top:1px solid #E1E8EA;
text-align:left;
position:relative;
}

ul.foot_nav li:after{
content:"";
margin:0;
padding:0 0 0 30px;
font-size:14px;
font-weight:bold;
}
ul.foot_nav li a{
color:#303840;
font-size:13px;
transform: rotate(0.05deg);
}
ul.foot_nav li a:hover{
color:#20A7B4;
}

div.foot_copy{
padding: 10px 0 10px;
}
.foot_copy h5{
font-size:12px;
transform: rotate(0.05deg);
}

/*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: #20A7B4;
position: absolute;
top: 0;
bottom: 20px;
right: 0;
left: 0;
margin: auto;
text-align: center;
}




/*--------------------------------------------------------
コンテンツ
--------------------------------------------------------*/
div.title_area{
padding:0px 0 20px;
}
div.title_area h2{
font-size:20px;
text-align: center;
}
div.title_area h2:after,
div.title_area_sv h2:after,
div.title_area_com h2:after{
margin:10px auto 0;
}
/*about*/
div.about{
width:80%;
display:block;
padding:40px 0px 40px;
box-sizing:border-box;
margin: 0 auto;
}
div.about_text{
width:100%;
margin:0 auto;

}
div.about_text p{
transform: rotate(0.05deg);
text-align:left;
font-size:14px;
line-height:2;
padding:0 0 20px 0!important;
margin: 0 0 0px 0;
}
div.about_text p span{
font-size:16px;
font-weight: 600;
}

/*sv*/
div.service{
padding:0px 0 0px;
}
div.title_area_sv{
padding:40px 0 0;
}
div.title_area_sv h2{
font-size:20px;
}
div.sv_in{
padding:30px 0 30px;
}
ul.sv_list{
display:flex;
justify-content:space-around;
align-items:stretch;
flex-direction:column;
}
ul.sv_list li{
width:80%;
margin:0 auto 20px;
padding:30px;
box-sizing:border-box;
}
div.sv_icon{
}
ul.sv_list li h3{
font-size:16px;
padding-bottom:15px;
}
ul.sv_list li p{
text-align:left;
line-height:2;
font-size:13px;
font-weight: 300;
}


/*company*/
div.company{
width:100%;
display:block;
padding:40px 0px 40px;
box-sizing:border-box;
margin: 0 auto;
}
div.com_wrap{
width: 80%;
margin: 0 auto;
padding:0px;
}
div.title_area_com{
padding:0px 0 0px;
}
div.title_area_com h2{
text-align:center;
font-size:20px;
}
div.com_text{
width:100%;
}
div.com_text img{
margin:20px auto 0;
width:30%;
}
table.com_tb{
width:auto;
margin:20px auto 0;
border-collapse:collapse;
}
table.com_tb th{
display: block;
width:auto;
font-size:14px;
padding: 15px 10px 0px 10px;
text-align:left;
vertical-align:top;
transform: rotate(0.05deg);
}
table.com_tb td{
display: block;
font-size:14px;
text-align:left;
padding: 5px 10px 15px 10px;
transform: rotate(0.05deg);

}


.cta_btn{
display:block;
width:80%;
padding: 20px;
font-size: 14px;
letter-spacing: 5px;
margin: 30px auto;
text-align:center;

}


/*//////////////////////////////////
//下層ページ
//////////////////////////////////*/
.privacy_wrap {
padding: 0px;
box-sizing: border-box;
text-align: left;
width:100%;
margin: 0 auto;
}
.privacy_wrap p{
font-size:14px;
transform: rotate(0.05deg);
margin: 0 0 10px 0;
}
.privacy_wrap h4{
font-size:14px;
font-weight:bold;
transform: rotate(0.05deg);
}



































}
/*end 768 */
