@charset "UTF-8";


/*-----------------------------------------------------------------------------------------------------
スマホ用レイアウト（768px以下スクリーン）
-----------------------------------------------------------------------------------------------------*/

@media
only screen and (max-width : 768px){

/*--------------------------------------------------------
共通設定(スマホ)
-------------------------------------------------------*/

html{
	overflow-y: scroll;
	overflow-x: hidden;
}

html,body{
	width: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

/*画像サイズの調整*/
img {
	height: auto;
	max-width: 100%;
}

a{
	color: #39f;
	-webkit-tap-highlight-color: #fc6;
}

/*-----------------------------------------------------------------------------------------------------
各エリアの設定(スマホ)
-----------------------------------------------------------------------------------------------------*/

/*ページ全体*/
#container{
	position: relative;
	padding-top: 3.7em;
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;

}

/*本体*/
.main{
}

/*カラム部分*/
.main-in{ 
    padding:0em 0; 
}

/*カラム内部のサイズ*/
.main-contents .contents{
	margin-bottom:0em;
	padding: 0 10px;
}

.contents5{
	margin-bottom:0em;
	padding: 0 40px;
}

.contents2{
	margin-bottom:0em;
	padding: 0 10px;
}

.contents2 h2{
	color: #fff;
	font-size: 2.2em;
	font-weight: bold;
	text-align:center;
	background-color: #ef5b9c;
	margin: 20px 0 20px;
}

/*段落タグ*/
.main-contents p{ line-height:1.8em; }


/*全体のフォントサイズ*/
.main-contents{ font-size: 1.4em; }


/*-----------------------------------------------------------------------------------------------------
ｈタグの設定(スマホ)
-----------------------------------------------------------------------------------------------------*/

/*H2タグ*/
.main-contents h2{
	font-size: 1.4em;
	font-weight: bold;
	text-align:center;
}

/*H3タグ*/
.main-contents h3{
	font-size: 1.2em;
	font-weight: bold;
	border-radius: 5px;
}

/*H4タグ*/
.main-contents h4{

	margin: 0 0 0.5em;
	padding: 0.3em;
	font-size: 1.2em;
	font-weight: bold;
	background-color: transparent;
}

/*H5タグ*/
.main-contents h5{
	margin: 0 0 1.5em;
	padding: 0 0.8em 0.5em;
	border-bottom: 2px solid #414141;
	font-weight: bold;
}

/*-----------------------------------------------------------------------------------------------------
上部固定ヘッダー部分(スマホ)　※ロゴ・電話番号・お問い合わせボタン
-----------------------------------------------------------------------------------------------------*/

/*ヘッダの回り込み解除*/
#header #header-title,
#header-in #header-text{
	float: none;
	width: 100%;
}

#header{

	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	border-bottom: 1px solid #ccc;
}

#header-in {
	position: relative;
	padding:0em 0em 0.5em;
}

/*ヘッダーロゴ*/
#header #header-title{
	float: left;
	width: 25%; 
	margin-top:5px;
	margin-left:2px;
}

#header .header-logo {
	margin-bottom: 0em;
}

#header .header-logo img {
	width: 100%;
}

/*ヘッダー 電話ボタン*/
.header_tel {
	width:30%;
	float: right;
	margin:0.em 0.5em 0em;
}

.header_tel img {
	width:100%;
}

/*ヘッダー 問い合わせボタン*/
.header_mail {
	width: 38%;
	float: right;
	margin: 0.5em 0.3em 0em;
}

.header_mail img {
	width: 100%;
}
	
#header_02 {
	display: block;
	width: 100%;
	background-color: rgba(255,255,255,0);
	position: fixed;
	bottom:0;
	left: 0;
	z-index: 100;
}
#header-in_02 {
	background-color: rgba(255,255,255,0);
	position: relative;
	padding: 0em 0em 0em;
	text-align: center;
}

#header-in_02 img{
	width: 100%;
}

/*-----------------------------------------------------------------------------------------------------
ファーストビュー(ヘッダー画像)
-----------------------------------------------------------------------------------------------------*/

#main-image{
	padding-top:0em;
	height:auto;
}



/*--------------------------------------------------------------------------------------------------
※※※※※※※※※メイン部分(ボディ) ※ここに案件独自のcssを記述していく
-----------------------------------------------------------------------------------------------------*/

.subhead{
	margin: 0 -2em;
	margin-bottom: 1.5em;
}

.section_sub{
	color:#fff;
	position: relative;
}


.section_01{
	background-color:#fff;
	padding: 1em 0em;
}

.section_10{
	width: 100%;
	padding: 3em 0;
	background-image: url(../images/pattern.png);
	background-size: 100%;

}

.section_01_in{
	background-color:transparent;
}

.section_02{
	background-color:#fff;
}

.section_02_in{
	background-color:transparent;
}
	
.box_contact{
	background-image: url(../images/bg_contact.png);
	border-radius: 0px;
	padding:0em 0.5em 0.5em;
	margin: 0 0em;
}

.box_contact_inr{
	background-color: #fff;
	border-radius:0px 0px 0px 0px;
	padding: 0.5em 0.5em 0.5em;
}

.title_contact img{
	border-radius:15px 15px 0px 0px;
}
	
.img_contact_pc{
		display: none;
	}
	
.img_contact_sp{
		display: block;
	}
	
.box_kaatu{
	background-color: #f6f6f6;
	padding: 1em 1em;
	margin: 0 0em;
}



#box_point_area {
	width: 100%;
	margin: 0 auto;
	padding: 0em 0;
}
#box_point_area:after {
	content: "";
	clear: both;
	display: block;
}

.box_point {
	box-sizing: border-box;
	margin-bottom: 1em;
	overflow: auto;
}



/*--------------------------------------------------------
問い合わせ部分
--------------------------------------------------------*/

.section_entry {
	background-image: url(../images/bg_entry.png);
	background-repeat: repeat;
	background-size: cover;
	padding-top: 2em;
	padding-bottom: 2em;
}


.section_entry_in {
	background-color: transparent;
}
.box_entry {
	padding: 0em 2em 0em;
}

.entry_mail {
	text-align: center;
	margin-top: 0em;
	-webkit-animation-name:fuwafuwa; /* fuwafuwaっていうアニメーションをしてね！ */
	-webkit-animation-duration:2s;
	-webkit-animation-iteration-count:infinite;
	/*-webkit-animation-direction:alternate;*/
	-webkit-animation-timing-function:ease;
	-moz-animation-name:fuwafuwa;
	-moz-animation-duration:1s;
	-moz-animation-iteration-count:infinite;
	/*-moz-animation-direction:alternate;*/
	-moz-animation-timing-function:ease;
}

@-webkit-keyframes fuwafuwa {
	0% {-webkit-transform:translate(0, 0);}
	50% {-webkit-transform:translate(0, -10px);}
	100% {-webkit-transform:translate(0, 0);}
}
@-moz-keyframes fuwafuwa {
	0% {-moz-transform:translate(0, 0);}
	50% {-moz-transform:translate(0, -10px);}
	100% {-moz-transform:translate(0, 0);}
}


.entry_mail img{
	width: 100%;
}


.box_pro{
	background-color: #f6f6f6;
	border: 3px double #ccc;
	padding: 1em 1em;
	margin-bottom: 0em;
}




/* ------------------------------
   css3アニメーション
------------------------------ */

.fadeInUp {
	-webkit-animation: fadeInUp 1s cubic-bezier(.55, 0, .1, 1) both;
	animation: fadeInUp 1s cubic-bezier(.55, 0, .1, 1) both;
}
@-webkit-keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translateY(8px);
transform: translateY(8px);
}
}
@keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translateY(8px);
transform: translateY(8px);
}
}
.delay-05s {
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s;
}
.delay-1s {
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
}
.delay-15s {
	-webkit-animation-delay: 1.5s;
	animation-delay: 1.5s;
}
.delay-2s {
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
}
.delay-25s {
	-webkit-animation-delay: 2.5s;
	animation-delay: 2.5s;
}
.delay-3s {
	-webkit-animation-delay:3s;
	animation-delay: 3s;
}


.box_kensyu{
	background-color: #FFFDEE;
	border: 3px double #ccc;
	padding: 1em 1em;
	margin-bottom: 1.5em;
}




/*--------------------------------------------------------
よくある質問
--------------------------------------------------------*/

.box_qa {
	background-color: #efefef;
	margin: 0px;
	padding:0.5em;
}
.box_qa_q {
	background-color:#fff;
	padding:0.5em 1em;
	border-bottom:1px solid #ccc;
	font-size: 100%;
	font-weight:bold;
	color: #CD3B3E;
}
.box_qa_a {
	background-color:#fff;
	padding:0.5em 1em;
}


/*--------------------------------------------------------
メールフォーム部分
--------------------------------------------------------*/

/*全体*/
.mailform {
	background-image: url(../images/bg_mail.png);
	background-position: top center;
	background-repeat: no-repeat;
	margin:0em 0em 1em;
	padding: 1em 0em 1.5em;
	border-radius:20px;
	box-shadow: 0px 0px 1px #594a42;
}

/*入力部分*/
.input {
	margin:0em 0em 0em;
	padding:1em 1em;
	font-color: #000;
}

.input_style{
	width:100%; 
	height:60px;
	font-size:100%;
	border-radius:8px;
	margin-bottom:0.5em;
	text-align:center;
	color:#7b7b7b;
}

input[type="image"] {
	width:100%;
	text-align:center;
	margin:0em;
}

/*注意部分の文字*/
.caution {
	margin:0em;
	padding: 0;
	font-size: 90%;
	color: #990000;
	text-align: center;
}

/*--------------------------------------------------------
Tableをブロック表示に 
--------------------------------------------------------*/

.main-contents .table-style01,
.main-contents .table-style01 tr,
.main-contents .table-style01 th,
.main-contents .table-style01 td{ display: block; }

.main-contents .table-style01 th,
.main-contents .table-style01 td{
	float: left;
	width: 100% !important;
	box-sizing: border-box;
	-moz-box-sizing:padding-box;
}

.main-contents .table-style01{ zoom : 1; }
.main-contents .table-style01:after{ content : ''; display : block; clear : both; height:0; }


/*--------------------------------------------------------
スマホ用Youtube調整タグ
--------------------------------------------------------*/

.main-contents .v-wrap{
	position: relative;
	overflow: hidden;
	height: 0;
	padding-bottom: 56.25%;
	padding-top: 30px;
}

.main-contents .v-wrap iframe,
.main-contents .v-wrap object,
.main-contents .v-wrap embed{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
	
	
/*-----------------------------------------------------------------------------------------------------
フッター部分
-----------------------------------------------------------------------------------------------------*/

#footer{ padding:1em 0em; 
            font-size: 1em;}

	/* ------------------------------
   スライダー
------------------------------ */
.loopSliderWrap {
	top: 0;
	left: 0;
	height: 200px;
	overflow: hidden;
	position: absolute;
}
.loopSlider {
	background-color: #fff;
	margin: 0 auto;
	width: 100%;
	height: 100px;
	text-align: left;
	position: relative;
	overflow: hidden;
}
.loopSlider ul {
	height: 200px;
	float: left;
	overflow: hidden;
}
.loopSlider ul li {
	width: 150px;
	height: 150px;
	float: left;
	display: inline;
	overflow: hidden;
}
.loopSliderWrap ul li img {
	width: 100%;
}
/* ------------------------------
   CLEARFIX ELEMENTS
------------------------------ */
.loopSliderWrap:before, .loopSliderWrap:after, .loopSlider ul:before, .loopSlider ul:after {
	content: " ";
	display: table;
}
.loopSliderWrap:after, .loopSlider ul:after {
	clear: both;
}
.loopSliderWrap, .loopSlider ul {
*zoom: 1;
}

.sp_br{
		display: block;
	}
	
	.bubble .bubble-in:after, .bubble .bubble-in:before {
	position: absolute;
	top: 3%;
	width: 0;
	height: 0;
	border: solid transparent;
	content: "";
}

.heartbeat {
	-webkit-animation: heartbeat 1.5s ease-in-out infinite both;
	        animation: heartbeat 1.5s ease-in-out infinite both;
}


/* ----------------------------------------------
 * Generated by Animista on 2021-9-14 10:36:22
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation heartbeat
 * ----------------------------------------
 */
@-webkit-keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}
@keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  10% {
    -webkit-transform: scale(0.91);
            transform: scale(0.91);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  17% {
    -webkit-transform: scale(0.98);
            transform: scale(0.98);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  33% {
    -webkit-transform: scale(0.87);
            transform: scale(0.87);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  45% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
}

.oss {
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
	margin: 1em 0 .5em;
}

.oss2 {
	background:linear-gradient(transparent 60%, #c9e4f1 60%);
}

.oss3 {
	display: inline-block;
	color: red;
	font-size: 22px;
	background:linear-gradient(transparent 60%, #ffff00 60%);
	vertical-align: -3px;
	margin-left: 7px;
	margin-top: 4px;
}

.oss4 {
	display: inline-block;
	line-height: 26px;
	color: #fff;
	background-color: red;
	padding: 0 .4em;
}

ul {
	border: solid 2px #00a9e0;
	border-radius: 15px;
	padding: 0.8em 1em 0.5em 2.3em !important;
	position: relative;
	margin-bottom: 2em !important;
  }
  
  ul li {
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.5;
	padding: 0.5em 1em 0.5em .3em;
	margin-bottom: .5em;
	list-style-type: none!important;
  }
  
  ul li:before {
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
	content: "\f138";/*アイコンの種類*/
	position: absolute;
	left : 1em;/*左端からのアイコンまでの距離*/
	color: #00a9e0;/*アイコン色*/
  }











  /*--------------------------------------------------
Q&Aアコーディオン
-----------------------------------------------------*/
.accordion_area {
	padding: 1em 1em;
}
.accordion_area .accordion_one .ac_header {
  background-color: #ffffff;
  border: 1px solid #ccc;
  padding: .8rem 2.8rem .8rem .7rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
}
.accordion_area .accordion_one .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header {
  background-color: #eee;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: .7rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: .8rem 1rem .8rem .7rem;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  background: #fff;
}

.accordion_one {
  margin-bottom: 1.5em;
}

 
/*=========
faq
=========*/
.p-faq__headinner {
  display: block;
  padding-left: 30px;
  position: relative;
  line-height: 1.5;
}
.p-faq__headinner::before {
  position: absolute;
  top: -7px;
  left: 0;
  content: "Q.";
  color: #09357f;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
}
.p-faq__headinner p.p-faq__q-txt {
  font-size: 1.4em;
}
.p-faq__bodyinner {
  display: block;
  padding-left: 30px;
  position: relative;
  line-height: 1.5;
}
.p-faq__bodyinner::before {
  position: absolute;
  top: -7px;
  left: 0;
  content: "A.";
  color: #de0000;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
}
.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 1.4em;
}


.mezase_ttl {
	margin: 0 0 3em;
	text-align: center;
}

.mezase01,
.mezase02,
.mezase03 {
	margin: 0 0 1em;
	text-align: center;
}

.mezase01 img,
.mezase02 img,
.mezase03 img {
	width: 50%;
}

p.mezase {
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	margin-bottom: .5em;
}

p.mezase2 {
	margin-bottom: 3.5em;
}

.yel {
	background:linear-gradient(transparent 40%, #ffff00 40%);
}







}

