@charset "utf-8";

/*------------------------------------------------------------------
	Universal Selector
------------------------------------------------------------------*/
* {
    font-style: normal;
    margin: 0;
    padding: 0;
    text-align: left;
	box-sizing: border-box;
}

/*------------------------------------------------------------------
	Base Settings
------------------------------------------------------------------*/
html {
    overflow-y: scroll;

}


body {
font-family: HalisR-Regular, 游ゴシック体, "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
    color: #231815;
    font-size: 16px;
    line-height: 1.5;
	position: relative;
	background: #fff;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th {
    text-align: left;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    margin: 0;
    padding: 0;
}
li {
    list-style-type: none;
}
p{
	line-height:1.8;
}
img{
    height: auto;
    max-width: 100% ;
	vertical-align: bottom;
}

/*------------------------------------------------------------------
	Base Link Color Setting
------------------------------------------------------------------*/

a {
    color: #231815;
    text-decoration: none;
}

a:hover {

    text-decoration: underline;
}
a:active {
    text-decoration: underline;
}
a img {
    border: medium none;
}

a:hover .fil,.fil2 a:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
}

.fil3 a img{
 transition:0.5s all;
}
.fil3 a:hover img{
  transform:scale(1.05);
}
/* マージン・インデント
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.m1b { margin-bottom: 1px !important; }
.m2b { margin-bottom: 2px !important; }
.m3b { margin-bottom: 3px !important; }
.m4b { margin-bottom: 4px !important; }
.m5b { margin-bottom: 5px !important; }
.m6b { margin-bottom: 6px !important; }
.m7b { margin-bottom: 7px !important; }
.m8b { margin-bottom: 8px !important; }
.m9b { margin-bottom: 9px !important; }
.m10b { margin-bottom: 10px !important; }
.m13b { margin-bottom: 13px !important; }
.m15b { margin-bottom: 15px !important; }
.m20b { margin-bottom: 20px !important; }
.m25b { margin-bottom: 25px !important; }
.m30b { margin-bottom: 30px !important; }
.m35b { margin-bottom: 35px !important; }
.m40b { margin-bottom: 40px !important; }
.m45b { margin-bottom: 45px !important; }
.m50b { margin-bottom: 50px !important; }
.m60b { margin-bottom: 60px !important; }
.m80b { margin-bottom: 80px !important; }

.m5t { margin-top: 5px !important; }
.m10t { margin-top: 10px !important; }
.m20t { margin-top: 20px !important; }
.m30t { margin-top: 30px !important; }
.m40t { margin-top: 40px !important; }
.m50t { margin-top: 50px !important; }
.m70t { margin-top: 70px !important; }
.m80t { margin-top: 80px !important; }
.m90t { margin-top: 90px !important; }
.m100t { margin-top: 100px !important; }

.m-1l{margin-left:-18px !important}
.m5l { margin-left: 5px !important; }
.m10l { margin-left: 10px !important; }
.m15l { margin-left: 15px !important; }
.m20l { margin-left: 20px !important; }
.m25l { margin-left: 25px !important; }
.m30l { margin-left: 30px !important; }

.m5r { margin-right: 5px !important; }
.m10r { margin-right: 10px !important; }
.m15r { margin-right: 15px !important; }
.m20r { margin-right: 20px !important; }
.m25r { margin-right: 25px !important; }
.m30r { margin-right: 30px !important; }
.m40r { margin-right: 40px !important; }
.m50r { margin-right: 50px !important; }

.p5b { padding-bottom: 5px !important; }
.p10b { padding-bottom: 10px !important; }
.p15b { padding-bottom: 15px !important; }
.p20b { padding-bottom: 20px !important; }
.p25b { padding-bottom: 25px !important; }
.p30b { padding-bottom: 30px !important; }
.p40b { padding-bottom: 40px !important; }
.p50b { padding-bottom: 50px !important; }
.p60b { padding-bottom: 60px !important; }
.p70b { padding-bottom: 70px !important; }
.p80b { padding-bottom: 80px !important; }

.p5t { padding-top: 5px !important; }
.p8t { padding-top: 8px !important; }
.p10t { padding-top: 10px !important; }
.p15t { padding-top: 15px !important; }
.p17t { padding-top: 17px !important; }
.p20t { padding-top: 20px !important; }
.p25t { padding-top: 25px !important; }
.p30t { padding-top: 30px !important; }

.p5a { padding: 5px !important; }
.p10a { padding: 10px !important; }
.p20a { padding: 20px !important; }
.p40a { padding: 40px 0 !important; }
.p50a { padding: 50px 0 !important; }

.p0r { padding-right: 0px !important; }
.p5r { padding-right: 5px !important; }
.p10r { padding-right: 10px !important; }
.p20r { padding-right: 20px !important; }
.p15r { padding-right: 15px !important; }
.p25r { padding-right: 25px !important; }
.p30r { padding-right: 30px !important; }
.p40r { padding-right: 40px !important; }
.p50r { padding-right: 50px !important; }
.p55r { padding-right: 55px !important; }
.p60r { padding-right: 60px !important; }
.p70r { padding-right: 70px !important; }
.p75r { padding-right: 75px !important; }
.p90r { padding-right: 90px !important; }
.p100r { padding-right: 100px !important; }
.p110r { padding-right: 110px !important; }
.p120r { padding-right: 120px !important; }

.p0l { padding-left: 0px !important; }
.p10l { padding-left: 10px !important; }
.p15l { padding-left: 15px !important; }
.p20l { padding-left: 20px !important; }
.p25l { padding-left: 25px !important; }
.p30l { padding-left: 30px !important; }

/*sp時変更*/
.m10b-s { margin-bottom: 10px !important; }
.m20b-s { margin-bottom: 20px !important; }
.m30b-s { margin-bottom: 30px !important; }
.m40b-s { margin-bottom: 40px !important; }
.m50b-s { margin-bottom: 50px !important; }
.m60b-s { margin-bottom: 60px !important; }
.m70b-s { margin-bottom: 70px !important; }
.m80b-s { margin-bottom: 80px !important; }
.m100b-s { margin-bottom: 100px !important; }
.p50t-s { padding-top: 50px !important; }
.m20l-s{margin-left:20px !important}
.m30r-s{margin-right:30px !important}
.m50l-s{margin-left:50px !important}
.p01-s { padding: 20px !important; }
.p02-s { padding: 10% 5% !important; }

.m01-s { margin: 0 50px 30px !important; }
.p20a-s{ padding: 20px !important; }


/* 位置クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.clear { clear: both !important; }
.cen { text-align: center !important; }
.cen-pc{text-align:center !important;}
.left { text-align: left !important; }
.right { text-align: right !important; }
/* 投稿の画像配置 */
.f-left{float:left;}
.f-right{float:right;}
.f-left-pc {float: left;}
.f-right-pc {float: right;}
.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */

.pc-dnon{display: none;}
.pc-dnon2{display: none;}

.wid01-pc{width:50%;}

/* テキスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.bold { font-weight: bold !important; }
.txtRed { color: #df1834 !important; }
.txtBlue { color: #0073ac !important; }
.txtPink { color: #F246A4 !important; }
.txtGold { color: #A98552 !important; }
.txtGray { color: #666666 !important; }
.txtWhite { color: #FFFFFF !important; }
.txtgreen { color: #00ada9 !important; }
.txtorenge{color:#fd851b}
.txtBlack{color: #333 !important;}


.txt10 { font-size: 77% !important; }
.txt11 { font-size: 92% !important; }
.txt13 { font-size: 109% !important; }
.txt14 { font-size: 117% !important; }
.txt15 { font-size: 125% !important; }
.txt17 { font-size: 142% !important; }
.txt18 { font-size: 150% !important; }
.txt20 { font-size: 167% !important; }

.lh01{line-height:1 !important;}
.lh02{line-height:2  !important;}
.f-min{
	font-family: "小塚明朝 Pro", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E", "メイリオ", Meiryo, serif;
}
.f-go{
	font-family: HalisR-Regular, 游ゴシック体, "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
}
.vaMiddle { vertical-align: middle !important; }
.oh{overflow:hidden;}
.blk{
	display:block;
}
.underline{
	text-decoration: underline;
}
.img100 {
    height: auto;
    width: 100%;
}

table{
	width:100%;
}
td,th{
	padding:10px;
}

/*------------------------------------------------------------------
	全体レイアウト
------------------------------------------------------------------*/
.container{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width: 855px;
	overflow:hidden;
}
.container2{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width: 810px;
	overflow:hidden;
}
.ulstyle01{
	display: flex;
	flex-wrap: wrap;
}
.ulstyle01 li{
	padding: 5px;
}
.ulstyle02 li{
	font-size:110%;
	background: url(images/list01.png) no-repeat left 5px;
	padding-left: 35px;
	margin-bottom: 10px;
}
.ulstyle03 li{
	list-style-type:lower-latin !important;
  padding-left: 1.3em;
  text-indent: -1.3em;	
}
.olstyle01 li{
  list-style: none;
  padding-left: 1.3em;
  text-indent: -1.3em;
}
.dlstyle01{
	display: flex;
	flex-wrap: wrap;
}
.dlstyle01 dt{
	width: 30%;
	margin-bottom: 10px;
}
.dlstyle01 dd{
	width:70%;
	margin-bottom: 10px;
}
/*--------------------------header--------------------------*/
header{
	padding-top: 20px;
	background: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100px;
}
header .logo{
	padding: 10px 30px;
}
header .logo{
	width:320px;
}
header .logo a:hover,header dl dd a:hover img{
		opacity: 0.7;
	filter: alpha(opacity=70);
}
header dl{
	display: flex;
	align-items: center;
	font-size:14px;
}
header dl dd,header dl dd{
	padding: 0px 20px;
	margin: 0;
}
header dl dd{
	width: 280px;
}
header dl dd:first-of-type{
	border-right: solid 1px #ccc;
}
/*============
nav
=============*/
nav {
  display: block;
  position: fixed;
  top: 0;
  left: -400px;
  bottom: 0;
  width: 400px;
  background: #ffffff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 4;
  opacity: 0;
}
.open nav {
  left: 0;
  opacity: 1;
}
nav .inner {
  padding: 25px;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
nav .inner ul li a {
  display: block;
  color: #333;
  font-size: 14px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
	background: url(images/list01.png) no-repeat 5px center;
	padding-left: 40px;
}
nav .inner ul li a:hover {
  background: #00ada9 url(images/list01.png) no-repeat left center;
	color: #fff;
}
@media screen and (max-width: 767px) {
  nav {
    left: -280px;
    width: 280px;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position:absolute;
	background: url(images/menu.png) no-repeat center center;
	background-size:contain;
  top: 3%;
	right:3%;
  width: 80px;
  height: 80px;
  transition: all .5s;
  cursor: pointer;
  z-index: 3;

}

/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
}
.close{
	margin:30px auto;
	width: 200px;
	background: #00ada9;
	color: #fff;
	padding:10px;
	font-size:18px;
	border-radius: 10px;
	text-decoration: none;
	text-align: center;
}
.close:hover{
	background: #248194;
}
/*-----------footer--------------*/
footer{
	border-top:solid 4px #00ada9;
}
.foot{
	display: flex;
	justify-content: space-around;
	margin-bottom: 20px;
}
.foot div{
	padding: 30px 20px 5px;
	border-left:solid 1px #fff;
}
.foot div h2{
	margin-bottom: 15px;
	font-size:14px;
}
.foot div ul li{
	font-size:12px;
}
.foot div ul li::before{
	content: "・";
}
.foot div:first-of-type{
	width: 23%;
}
.foot div:last-of-type{
	width: 43%;
}
/*------------トップページ---------------*/
.topimage{
	position: relative;
	background: url(images/top/top_bg01_pc.jpg) no-repeat top center;
	background-size:cover;
	width: 100%;
	height: 90vh;
}
.topimage .insta{
	position: absolute;
	left:50%;
	top:50%;
	margin-top: -100px;
	margin-left: -100px;
}
.topimage .insta img{
	width: 200px;
	height: auto;
}
.topimage .top_text{
	position: absolute;
	right:2%;
	top:21%;
	max-width: 16%;
}
.topimage .main-txt{
	color: #fff;
	font-size:130%;
	padding: 1.2%;
	font-weight: normal;
}
.topbg{
	display: none;
}
.top-sec{
	position: relative;
}
.top-sec h2{
	font-size:250%;
	position: absolute;
	color: #fff;
	left:5%;
	top:40%;
	font-weight: normal;
		text-shadow: 1px 1px 3px #aaa;
}
.top-sec p{
	position: absolute;
	color: #fff;
	left: 18%;
	bottom: 21%;
	font-size:130%;
		text-shadow: 1px 1px 3px #aaa;
}
#s04{
	padding-top: 50px;
}
#s04 .text01{
	font-size:30px;
	background: url(images/top/top_fig01.jpg) no-repeat right bottom;
	background-size:270px;
	padding: 20px 0;
	padding-right: 200px;
	margin-bottom: 80px;
}

#s04 ul li a{
	display: flex;
	justify-content:space-between;
	align-items: center;
	font-size:25px;
	margin-bottom: 40px;
	border: solid 45px #efefef;
	text-decoration: none;
}
#s04 ul li a:hover{
	border: solid 45px #ddd;

}
#s04 ul li .koumoku{
	background:#fff url(images/top/top_icon01.png) no-repeat 40px top;
	background-size:80px;
	padding-left: 135px;
	line-height: 1.5;
}
#s04 ul li:nth-of-type(2) .koumoku{
	background:#fff url(images/top/top_icon02.png) no-repeat 40px top;
	background-size:80px;
}
#s04 ul li:nth-of-type(3) .koumoku{
	background:#fff url(images/top/top_icon03.png) no-repeat 40px top;
	background-size:80px;
}
#s04 ul li:nth-of-type(4) .koumoku{
	background:#fff url(images/top/top_icon04.png) no-repeat 40px top;
	background-size:80px;
}
#s04 ul li span{
	display: block;
	color: #00ada9;
	font-size:120%;
}
#s04 ul li img{
	width: 150px;
}
#s04 .text02{
	font-size:30px;
}
.home #main .ulstyle01 li a img{
	border-radius: 50%;
	margin-bottom: 10px;
	transition: 1s ;
	transform: rotateY( 0deg ) ;
}
.home #main .ulstyle01 li a:hover img{
	transform: rotateY( 360deg ) ;
}

.link01 a{
	max-width: 433px;
	width: 90%;
	border: solid 1px #9fa0a0;
	background: #efefef;
	color: #00ada9;
	display: inline-block;
	padding: 20px 30px;
	font-size:18px;
	border-radius: 20px;
	text-decoration: none;
	text-align: center;
}
.link01 a:hover{
	background: #fff;
}

/*------------下層ページ---------------*/
.subimage{
	position: relative;
	background: url(images/subimage.jpg) no-repeat top center;
	background-size:100%;
	width: 100%;
}
.subimage .top_text{
	padding: 110px 3% 30px;
	text-align: right;
	padding-left:80%;
}
.subimage .insta{
	position: absolute;
	left:5%;
	top:50%;
	margin-top: -100px;
}
.subimage .insta img{
	width: 200px;
	height: auto;
}
article{
	padding: 80px 0;	
}
article h1{
	text-align: center;
	font-size:30px;
}
article#about h2,article#contact h2{
	padding: 40px 20px;
	background: #f7f8f8;
	text-align: center;
	font-size:29px;
	font-weight: normal;
}
article#about  h2 span{
	display: block;
	font-size:60%;
	text-align: center;
}
article iframe{
	width: 100%;
	height: 300px;
	margin-bottom: 10px;
}
#about04 .ulstyle01 li{
	margin-right: 20px;
}

#onestop01{
	background: #ebf5f7;
	padding: 75px;
}
#onestop01 div{
	background: url(images/onestop/onestop_fig01.png) no-repeat left 20px;
	padding-bottom: 30px;
	margin-bottom: 30px;
	padding-left: 140px;
	border-bottom: solid 1px #c9caca;
}
#onestop01 div#keihi{
	background: url(images/onestop/onestop_fig02.png) no-repeat left 20px;
}
#onestop01 div#renraku{
	background: url(images/onestop/onestop_fig03.png) no-repeat left 20px;
}
#onestop01 h2{
	font-size:25px;
	font-weight: normal;
	margin-bottom: 20px;
}

#service01{
	background: #e8f2f1;
	border-radius: 20px;
	padding: 40px 70px;
}
#service01 h2{
	font-size:22px;
	font-weight: normal;
}
#service01 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#service01 ul li{
	background: #fff;
	color: #00ada9;
	border:solid 1px #00ada9;
	border-radius: 10px;
	width: 19%;
	margin-bottom: 10px;
	padding: 5px;
	text-align: center;
	font-size:90%;
}
#service02 h2,#service03 h2,#service04 h2,#service05 h2{
	background: #f7f8f8;
	font-size:29px;
	font-weight: normal;
}
#service02 h2 .container2{
	background: url(images/top/top_icon01.png) no-repeat 5px center;
	background-size:83px;
	padding: 20px;
	padding-left: 120px;
	line-height: 1.5;

}
#service03 h2 .container2{
	background: url(images/top/top_icon02.png) no-repeat 5px center;
	background-size:83px;
	padding: 20px;
	padding-left: 120px;
	line-height: 1.5;

}
#service04 h2 .container2{
	background: url(images/top/top_icon03.png) no-repeat 5px center;
	background-size:83px;
	padding: 20px;
	padding-left: 120px;
	line-height: 1.5;

}
#service05 h2 .container2{
	background: url(images/top/top_icon04.png) no-repeat 5px center;
	background-size:83px;
	padding: 20px;
	padding-left: 120px;
	line-height: 1.5;

}
.sbox01{
	padding: 30px 0;
	border-bottom:solid 1px #b5b5b6;
	display: flex;
	justify-content: space-between;
}
.sbox01.last{
	border-bottom: none;
}
.sbox01 div{
	width: 60%;
}
.sbox01 figure{
	width:40%;
	text-align: right;
}
.sbox01 h3{
	font-size:25px;
	font-weight: normal;
}
/*** custom checkboxes ***/
/*
input[type=checkbox] { display:none; }
input[type=checkbox] + label:before {
font-family: "Font Awesome 5 Free";
  display: inline-block;
}

input[type=checkbox] + label:before { content: "\f0c8";font-weight: 400; }
input[type=checkbox] + label:before { letter-spacing: 10px; } 

input[type=checkbox]:checked + label:before { font-family: "Font Awesome 5 Free";content: "\f14a";font-weight: 900; } 
input[type=checkbox]:checked + label:before { letter-spacing: 5px; }
*/

#contact h1{
	font-size:130%;
}
#contactform{
	margin-bottom: 13%;
}
#contactform .inner{
	border:solid 45px #bce1df;
	background: #fff;
	padding: 20px 50px;
	margin-bottom: 10%;
}
#contactform .inner dl{
	display: flex;
	flex-wrap: wrap;
}
#contactform .inner dl dt{
	width: 40%;
}
#contactform .inner dl dd{
	width: 60%;
}
#contactform input[type=text],#contactform textarea{
	width:100%;
	background: #fff;
	padding: 5px;
	font-size:90%;
	border:solid 1px #ccc;
	margin-bottom: 10px;
}
#contactform  input[type=text].tel{
	width: 80px;
	text-align: center;
}
#contactform textarea{
	height:200px;
}
#contactform select{
	background: #fff;
	padding: 5px;
	font-size:90%;
	border:solid 1px #ccc;
	margin-bottom: 10px;
	color: #333;
}
input::placeholder {
  color: #aaa;
}
.btn01,.btn02{
	width: 433px;
	border: solid 1px #9fa0a0;
	background: #efefef;
	color: #00ada9;
	padding: 20px 30px;
	font-size:18px;
	border-radius: 20px;
	text-decoration: none;
	text-align: center;
}

.btn01:hover,.btn02:hover{
	background: #fff;
}
#contact02 ul li ul{
	margin-left: 20px;
}
.form-btn{
	margin-top: 50px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.form-btn div:first-of-type{
	margin-right:20px;
}
.form-btn .btn01,.form-btn .btn02{
	width: 100%;
	max-width: 433px;
}
.form-btn div{
	width: 48%;
	text-align: center;
}
#contact li{
	line-height: 1.8;
}
#contact h4{
	background: #EFEFEF;
	padding: 1% 2%;
}
#contact .flow li{
padding-left: 1.3em;
  text-indent: -1.3em;
}
#contact .flow li:after{
	content: "↓";
	display: block;
	margin-left: 15%;
}
#contact .flow li:last-child:after{
	content: none;
}
#contact .txt{
	padding:1.5% 2%;
	border:solid 1px #ccc;
	text-align: center;
	font-size:115%;
	font-weight: bold;
}
.privacy-box{
	padding: 3% 5%;
	margin-bottom: 5%;
	border:solid 1px #ccc;
	height: 530px;
	overflow-y: scroll;
}
::-webkit-scrollbar{
　　width: 10px;
}
::-webkit-scrollbar-track{
　　background: #fff;
　　border-left: solid 1px #ececec;
}
::-webkit-scrollbar-thumb{
　　background: #ccc;
　　border-radius: 10px;
　　box-shadow: inset 0 0 0 2px #fff;
}

.help{
	padding: 2% 3%;
	border: solid 1px #ccc;
	max-width: 430px;
	margin: 0 auto;
	width: 90%;
}
.help .ttl{
	text-align: center;
	margin-bottom: 20px;
	font-weight: bold;
	font-size:105%;
}
.help ul li{
	text-align: center;
	margin-bottom: 5px;
}
@media screen and (min-width: 981px) and (max-width: 1299px) {
	.topimage{
	background: none;
		height: auto;
}
	.topbg{
		display: inline-block;
		position: relative;
	}
	.topimage .main-txt{
		position: absolute;
		top:10px;
		left: 10px;
		font-size: 120%;
		padding: 0;
	}
	.topimage .top_text{
		top:16%;
	}
	.subimage .top_text{
	padding: 70px 3% 10px;
	text-align: right;
	padding-left:85%;

}
	.subimage .toggle_btn{
		width: 40px;
		height:50px;
		top:1%;
	}
.subimage .insta{
	padding:28px 0;
}
.subimage .insta img{
	width: 140px;
	height: auto;
}
	}
/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑pcサイズ
----------------------------------
↓タブレットサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/
@media screen and (max-width: 980px){
	.container,.container2{
		padding: 10px;
	}
	header{
		padding-top: 0px;
		height: 80px;
	}
	header .logo{
		width: 30%;
		padding: 10px;
	}
	header dl{
		width: 68%;
	}
	header dl dt{
		font-size:90%;
	}
	header dl dd{
		width: 35%;
		padding: 0 10px;
	}
nav {
  left: -300px;
  width: 300px;
	}
.topimage{
	position: relative;
	background: url(images/top/top_bg01_sp.jpg) no-repeat top center;
	background-size:100%;
	width: 100%;
	height: 95vh;
}
	.topimage .main-txt{
		font-size: 3.2vw;
		line-height: 1.5;
		padding: 3% 5px;
		padding-right: 36%;
	}
	.toggle_btn{
		width: 30px;
		height:30px;
		top:1%;
	}
	.topimage .top_text{
		top:8%;
		max-width: 20%;
	}
		.subimage .top_text{
	padding: 70px 3% 10px;
	text-align: right;
	padding-left:85%;
}
.subimage .insta{
	top:12px;
	margin-top: 0;
}
.subimage .insta img{
	width: 125px;
	height: auto;
}
	
}


@media screen and (min-width: 640px) and (max-width: 979px) {
.tb-dnon{
	display:none;
}
.pc-dnon2{
	display:block;
}
.main-txt img{
	max-width: 300px;
}
	.top-sec h2{
		top:10%;
		left: 20px;
		font-size:200%;
		text-shadow: 1px 1px 3px #aaa;
	}
	.top-sec p{
		left:20px;
		bottom:auto;
		top:35%;
		text-shadow: 1px 1px 3px #aaa;
	}
	#s04{
		padding-top: 0;
	}
	#s04 .text01{
		font-size:170%;
		padding-right: 38%;
		margin-bottom: 40px;
	}
	#s04 ul li a{
	margin-bottom: 30px;
	border: solid 15px #efefef;
		font-size:140%;
}
	#s04 ul li a:hover{
	border: solid 15px #ddd;

}
		#s04 ul li .koumoku,#s04 ul li:nth-of-type(2) .koumoku,#s04 ul li:nth-of-type(3) .koumoku,#s04 ul li:nth-of-type(4) .koumoku{
		background-position: 20px top;
		background-size:50px;
		padding-left: 80px;
	}
	#s04 .text02{
		font-size:170%;
	}

}
/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑タブレットサイズ
----------------------------------
↓spサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/
@media screen and (min-width: 640px){


}

@media screen and (max-width: 639px) {
	
/*----------共通------------*/	
body{
	font-size:14px;

}
.sp-dnon {
    display: none;
}
.pc-dnon,.pc-dnon2{
    display:  block;
}
.db-sp{
	display:block;
}


/*margin padding変更*/
.m10b-s { margin-bottom: 5px !important; }
.m20b-s { margin-bottom: 10px !important; }
.m30b-s { margin-bottom: 15px !important; }
.m40b-s { margin-bottom: 20px !important; }
.m50b-s { margin-bottom: 25px !important; }
.m60b-s { margin-bottom: 30px !important; }
.m70b-s { margin-bottom: 35px !important; }
.m80b-s { margin-bottom: 35px !important; }
.m100b-s { margin-bottom: 50px !important; }
.m01-s{margin:0 5px;}
.p01-s { padding:20px 10px !important; }
.p01-s { padding:20px 10px !important; }
.p03-s { padding:10px !important; }
.p04-s{padding:10px 0 !important; }
.p10l-s{margin-left:0px !important}
.sp-p01{padding:0 5px;}
	.txt18{font-size:130% !important;}
	.cen-pc{text-align: left !important;}
.f-left-pc, .f-right-pc,#m-right,#m-left{
    float: none;
}


/*-----------footer--------------*/
	.foot{
		display: block;
	}
	.foot div{
		padding: 10px;
		width: 100%;
		margin-bottom: 5px;
	}
	.foot div:first-of-type,.foot div:last-of-type{
		width: 100%;
	}
	.foot div h2{
		margin-bottom: 5px;
	}
/*------------トップページ---------------*/
	header{
		height: 50px;
	}
	header dl dt{
		display: none;
	}
	header dl dd{
		width: 50%;
	}
	header .logo{
		padding: 0;
		padding-top: 5px;
	}
	.topimage{
		background-size:cover;
	}
	.topimage .main-txt{
		padding-top:5%;
	}
.topimage .insta{
	margin-top: -75px;
	margin-left: -75px;
}
.topimage .insta img{
	width: 150px;
	height: auto;
}
	.top-sec h2{
		top:20%;
		left: 10px;
		font-size:120%;
		text-shadow: 1px 1px 3px #555;
	}
	.top-sec p{
		background: #00ada9;
		position: static;
		font-size:90%;
		padding: 10px;
		line-height: 1.6;
	}
	.top-sec#s02 p{
		background: #248194;
	}
	.top-sec#s03 p{
		background: #0073ac;
	}
	#s04{
		padding-top: 0;
	}
	#s04 .text01{
		font-size:120%;
		padding:0 10px;
		margin-bottom: 30px;
		background-position: center bottom;
		padding-bottom: 130px;
	}
	#s04 ul li a{
	margin-bottom: 30px;
	border: solid 15px #efefef;
			font-size:100%;
}
#s04 ul li a:hover{
	border: solid 15px #ddd;

}
	#s04 .text02{
		font-size:120%;
	}
	#s04 figure{
		width: 25%;
	}
	#s04 ul li .koumoku,#s04 ul li:nth-of-type(2) .koumoku,#s04 ul li:nth-of-type(3) .koumoku,#s04 ul li:nth-of-type(4) .koumoku{
		width: 75%;
		padding-left: 60px;
		background-size:40px;
		background-position: 10px top;

	}

	.link01 a,.btn01,.btn02{
		padding: 10px;
		width: 100%;
		text-align: center;
		line-height: 1.5;
	}
	.subimage{
		background-position: right center;
		background-size:140%;
	}
	.subimage .top_text{
	padding: 50px 3% 10px;
	text-align: right;
	padding-left:75%;
}
.subimage .insta{
	top:20px;
	margin-top: 0;
}
.subimage .insta img{
	width:80px;
	height: auto;
}
article{
	padding: 30px 0;	
}
article h1{
	font-size:150%;
}
article#about  h2,article#contact h2{
	padding: 20px 10px;
	font-size:140%;
}
article#about  h2 span{
	font-size:70%;
	text-align: center;
}
#about04 .dlstyle01 dt{
		font-weight: bold;
	}
#about04 .dlstyle01 dt,#about04 .dlstyle01 dd{
		width:100%;
	}

#about04 .ulstyle01 li{
	margin-right: 0px;
	width: 50%;
	font-size:90%;
}
#onestop01{
		padding: 20px;
	}
#onestop01 div,#onestop01 div#keihi,#onestop01 div#renraku{
		background-position: center top;
		background-size:80px;
		padding-left: 0;
		padding-top: 100px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	}
	#onestop01 h2{
		font-size:130%;
		margin-bottom: 10px;
	}
	#onestop01 p.cen-pc{
		line-height: 1.5;
		font-size:140% !important;
	}
	#service01{
		padding: 20px;
	}
	#service01 h2{
		font-size:110%;
	}
	#service01 ul li{
		width: 48%;
	}
	#service02 h2, #service03 h2, #service04 h2, #service05 h2{
		font-size:120%;
	}
	#service02 h2 .container2,#service03 h2 .container2,#service04 h2 .container2,#service05 h2 .container2{
		background-size:50px;
		background-position: 10px center;
		padding-left: 70px;
	}
	.sbox01{
		display: block;
		padding: 20px 0;
	}
	.sbox01:first-of-type{
		padding-top: 0;
	}
	.sbox01 h3{
		font-size:130%;
	}
	.sbox01 div,.sbox01 figure{
		width: 100%;
	}
	.sbox01 div{
		margin-bottom: 10px;
	}
	.sbox01 figure{
		text-align: center;
	}
	.sbox01.last{
		padding-bottom: 0;
	}
	#service .link01{
		margin: 0 10px;
	}
#contactform dl dt{
	width: 100%;
	padding: 5px 10px;
}
#contactform dl dd{
	width: 100%;
	padding: 5px 10px;
}
	#contactform h2 span.sentaku{
		position: static;
		display: block;
		text-align: center;
		font-size:90%;
	}
	#contactform .inner{
		padding: 10px;
		border-width: 10px;
	}
	#contactform .inner dl dt,#contactform .inner dl dd{
		width: 100%;
	}
	.btn01,.btn02{
		width: 100%;
	}
	#contactform input[type=text].tel{
		width: 60px;
	}
	.privacy-box{
		height: 300px;
	}
	.help{
		width: 100%;
	}
}