@charset "utf-8";

/*リセット*/
html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;}


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

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


body {
	position: relative;
font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;
    color: #333;
	background: #f6f3ec;
    font-size: 16px;
    line-height: 1.8;
}
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;
}
h1,h2,h3,h4,h5,h6{
	font-weight: normal;
}
/*------------------------------------------------------------------
	Base Link Color Setting
------------------------------------------------------------------*/

a {
    color: #333;
    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);
}

/* マージン・インデント
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.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; }

/*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; }
.m01-s{margin-bottom:100px;}
.m02-s{margin-bottom:150px;}
.p01-s { padding-top:80px;padding-bottom:80px;  }
.p02-s { padding-top:50px;padding-bottom:50px;  }
.p03-s { padding-top:120px;padding-bottom:50px;  }

/* 位置クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.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;}

/* テキスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.bold { font-weight: bold !important; }
.txtRed { color: #ca2e2c !important; }
.txtBlue { color: #4ab8f5 !important; }
.txtPink { color: #eb6c8b !important; }
.txtGold { color: #8b6c2e !important; }
.txtGray { color: #666666 !important; }
.txtWhite { color: #FFFFFF !important; }
.txtgreen { color: #79a035 !important; }
.txtorenge{color:#fd851b}
.txtBlack{color: #333 !important;}
.txtBlown{color: #603a40 !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: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E", "メイリオ", Meiryo, serif;
}
.f-maru{
  font-family: "Zen Maru Gothic", serif;
  font-weight: 400;
  font-style: normal;
}

.oh{overflow:hidden;}
.blk{
	display:block;
}
.underline{
	text-decoration: underline;
}
.img100 {
    height: auto;
    width: 100%;
}
table{
	width:100%;
}
td,th{
	padding:10px;
	font-weight: normal;
}
table th,table td{
border:solid 1px #ccc;
}
ol li{
	list-style-type: decimal;
	margin-left: 20px;
}

/*------------------------------------------------------------------
	全体レイアウト
------------------------------------------------------------------*/
/*ーーーーーーーーーー
.header
ーーーーーーーーーーー*/

/*----------header/ハンバーガーmenu-----------*/
    #head_wrap {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
    padding: 0;
    /* Fixed reset */
	z-index: 3;
  }

#head_wrap #mobile-head{
	display: flex;
	justify-content: space-between;
	padding:5px 10px;
}
#head_wrap #mobile-head .logo{
	text-align: center;
}
#head_wrap #mobile-head .logo img{
	margin-top: 2px;
}
#head_wrap #mobile-head .logo div.text{
	text-align: center;
	margin-bottom: 3px;
}
#head_wrap #mobile-head .logo div.jp{
	text-align: center;
	font-size:80%;
	margin-top: 2px;
}
#head_wrap #mobile-head #sns-nav ul{
	margin-right: 50px;
	display: flex;
}
#head_wrap #mobile-head #sns-nav li a{
	display: block;
	width: 60px;
	height: 60px;
	text-align: center;
	padding: 8px;
	background: #fff;
	border-radius: 10px;
	margin-right:10px;
}
  #head_wrap .fixed {
    padding-top: 0;
    background: transparent;
  }

  #global-nav {
	display: block;
  position: fixed;
  top: 0;
  right: 0;
  z-index:9;
  width: 100%;
  height: 100vh;
  opacity: 0;
  background:rgba(255,255,255,0.95);
  transition: all 0.3s ease-in-out;
  visibility: hidden;
	overflow-y: scroll;
	}
 /* #global-nav スライドアニメーション */
   .open #global-nav {
  right: 0;
  opacity: 1;
  -moz-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
    }
  #global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    padding:10% 5%;
	  width: 100%;
  }
  #global-nav ul li {
    float: none;
    position: static;
  }
	#global-nav ul li.tel{
		display: none;
	}
  #head_wrap #global-nav ul li a,
  #head_wrap.fixed #global-nav ul li a {
    width: 100%;
    display: block;
	  text-align: center;
	  padding: 3%;
	  text-decoration: none;
  }
	#global-nav ul li.mail a{
		margin-top: 5%;
	}
	#global-nav ul li.mail .pc-dnon{
		display: inline;
	}
  #nav-toggle {
    display: block;
  }
/* Toggle Button */
#nav-toggle {
        display: block;
		z-index:10;
    position: absolute;
    right: 15px;
    top: 15px;
    width: 38px;
    height: 40px;
    cursor: pointer;
}
#nav-toggle div {
        position: relative;
}
     #nav-toggle span {
        display: block;
        position: absolute;
        height: 4px;
        width: 100%;
        background: #666;
        left: 0;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
	}
 	#nav-toggle span:nth-child(1) {
            top: 0;
            }
 	#nav-toggle span:nth-child(2) {
            top: 13px;
            }
 	#nav-toggle span:nth-child(3) {
            top: 26px;
            }
	.open #nav-toggle span:nth-child(1) {
                    top: 11px;
                    -webkit-transform: rotate(315deg);
                    -moz-transform: rotate(315deg);
                    transform: rotate(315deg);
                }
	.open #nav-toggle span:nth-child(2) {
                    width: 0;
                    left: 50%;
                }
	.open #nav-toggle span:nth-child(3) {
                    top: 11px;
                    -webkit-transform: rotate(-315deg);
                    -moz-transform: rotate(-315deg);
                    transform: rotate(-315deg);
                }

footer{
	background: #fff;
}
footer ul{
	padding-top: 40px;
	margin-bottom: 80px;
	text-align: center;
}
footer ul li{
	display: inline-block;
	padding: 0 10px;
	border-right:solid 1px #333;
	line-height: 1.4;
}
footer ul li:last-of-type{
	border-right: none;
}
footer .copy{
	font-size:90%;
	text-align: center;
	padding-bottom: 10px;
}
/*-------------------common-----------------*/
.container{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width: 1100px;
}
.container2{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width:1200px;
}
.container3{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width:1440px;
}
.container4{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width:710px;
}
/* タイトル装飾 */
.hstyle01{
	position: relative;
}
.hstyle01 .en{
	text-align: center;
	color: rgba(228,135,90,0.15);
	font-size:600%;
  font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	line-height: 1;
}
.hstyle01 .en.color1{
	color: rgba(255,255,255,0.3);
}

.hstyle01 .ttl1{
	position: absolute;
	top:35%;
	width: 100%;
	font-size:180%;
  font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	text-align: center;
}
.hstyle02.h-s1 .ttl{
	display:inline-block;
	padding: 0 ;
	border-bottom: dotted 5px #e4875a;
}
.hstyle02{
	color: #e4875a;
  font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	font-size:140%;
}
.hstyle03{
	color: #fff;
  font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	font-size:140%;	
	text-shadow: 1px 1px 5px #723838;
	line-height: 1.5;
}
/* 枠装飾 */
.link01 a{
	position:relative;
	display: inline-block;
	min-width: 300px;
	padding:15px;
	background: url("images/common/btn_bg1.jpg") no-repeat center center;
	background-size:cover;
	color: #fff;
	border-radius:30px;
	font-size:110%;
	text-decoration: none;
	text-align: center;
	transition: 0.5s;
	text-shadow:0px 0px 7px #aaa;
}
.link01 a::after{
	content: url("images/common/list01.png");
	position: absolute;
	right:20px;
	top:17px;
}
.link01 a:hover{
	transform: scale(1.05);
}

.boxstyle01{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.boxstyle01.rev{
	flex-direction: row-reverse;
}
.boxstyle01.center{
	align-items: center;
}
.wid01{
	width:48%;
}
.wid02{
	width:50%;
}
.wid03{
	width: 40%;
}
.wid04{
	width: 57%;
}
.wid05{
	width: 33%;
}
.ulstyle01{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.ulstyle01 li{
	width: 30%;
	margin: 1%;
}
.ulstyle01 li:nth-of-type(4){
	width: 40%;
	margin-left: 5%;
}
.ulstyle01 li:nth-of-type(5){
	width: 40%;
	margin-right: 5%;
}
.ulstyle01 li p{
	padding: 0 5%;
}

.ulstyle02{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.ulstyle02 li{
	
}
.ulstyle02 li p{
	padding: 0 5%;
}
ul.slider1 li {
      display: block;
      text-align: center;
      width: 250px;
      margin: 10px;
}
/*-------------------top-----------------*/
.lineoubo{
	position: fixed;
	right:3%;
	bottom:2%;
	z-index: 3;
}
.lineoubo a img{
transition: 1s;
}
.lineoubo a:hover img{
	transform: scale(1.05);
}
#topimage{
	padding-bottom:40px;
	background: url("images/top/top_bg1.png") no-repeat center center;
	background-size:cover;
}
#topimage .inner1{
	margin-bottom: 80px;
}
#topimage .inner1 .img1{
	width: 40%;
	text-align: center;
}
#topimage .inner1 .img1 img{
	border-radius: 0 0 30px 30px;
}
#topimage .inner1 .inner1_text{
	width: 58%;
	padding-top: 15%;
}
#topimage .inner1 .inner1_text h2{
margin-bottom: 100px;
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  font-style: normal;
}
#topimage .inner1 .inner1_text h2 .text1{
	padding-bottom:5px;
	margin-bottom: 10px;
	display: inline-block;
	font-size:150%;
	text-shadow:#fff 0 0 1px,#fff 0 0 1px,#fff 0 0 3px,#fff 0 0 3px;
	border-bottom: dotted 5px #e4875a;
}
#topimage .inner1 .inner1_text h2 .text2{
	font-size:140%;
	text-shadow:#fff 0 0 1px,#fff 0 0 1px,#fff 0 0 3px,#fff 0 0 3px,#fff 0 0 5px,#fff 0 0 5px;
}
#topimage .inner2 .container3{
	position: relative;
	height: 400px;
}
#topimage .inner2 p{
	line-height: 2.5;
}
#topimage .inner2 .photo1{
	position: absolute;
	left: 0;
	top:25%;
}
#topimage .inner2 .photo2{
	position: absolute;
	right: 0;
	top:3%;
}
#topimage .inner2 .photo3{
	position: absolute;
	right:10%;
	top:45%;
}
#s01{
	/*position: relative;*/
	background: #fff;
}
#s01::before{
	content: " ";
	width: 100%;
	height: 250px;
	position: absolute;
	top:-250px;
	left: 0;
	background: #fff;
 	border-radius: 50% / 100% 100% 0 0;
}
#s01::after{
	content: " ";
	width: 100%;
	height: 24px;
	position: absolute;
	bottom:-24px;
	left: 0;
	background: url("images/common/bg02.png") repeat-x left top;
}
#s01 .inner1{
	margin-top: -250px;
	position: relative;	
}
#s01 .inner2{
	padding-top: 30px;
	padding-bottom: 50px;
	border-radius: 30px;
	background: #fac6ad;
}
#s02{
	position: relative;
	background: url("images/top/recommend_bg1.png") no-repeat center top 50px;
	background-size:100%;
}
#s02 .hstyle01{
	margin-top: 30px;
}
#s02 .inner1{
	/*margin-bottom: 100px;*/
}
#s02 .ulstyle01 li p{
	line-height: 1.5;
	  font-family: "Zen Maru Gothic", serif;
  font-weight:400;
  font-style: normal;
}
#s03{
	position: relative;
	background: url("images/top/liver_bg1.png") no-repeat center top;
	background-size:cover;
}
#s03::after{
	content: " ";
	width: 100%;
	height: 24px;
	position: absolute;
	bottom:-24px;
	left: 0;
	background: url("images/common/bg01.png") repeat-x left top;
}
#s03 h3.hstyle03{
	margin-bottom: 10px;
}

.ulstyle02 figure img{
	border-radius: 30px;
}

#s04 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#s04 ul li{
	width: 25%;
	margin: 0;
}
#s04 ul li:nth-of-type(5),#s04 ul li:nth-of-type(6),#s04 ul li:nth-of-type(7),#s04 ul li:nth-of-type(8){
	margin-top: -30px;
}
#s04 ul li:nth-of-type(even){
	padding-top: 30px;
}
#s05{
	padding-top: 20px;
	padding-bottom: 40px;
	position: relative;
	background: #e4875a;
	
}
#s05::before{
	content: " ";
	width: 100%;
	height: 160px;
	position: absolute;
	top:0;
	left: 0;
	background: #f6f3ec;
 	border-radius: 50% / 0 0 100% 100%;
}
#s05 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding:50px 3% 30px;
}
#s05 ul li{
	width: 25%;
	padding: 20px;
	border-right:dotted 3px rgba(255,255,255,0.7);
}
#s05 ul li h3{
	text-align: center;
	margin-bottom: 10px;
}
#s05 ul li p{
	color: #fff;
}
#s05 ul li:nth-of-type(4),#s05 ul li:nth-of-type(8){
	border-right:none;
}
#s05 ul li:nth-of-type(1),#s05 ul li:nth-of-type(2),#s05 ul li:nth-of-type(3),#s05 ul li:nth-of-type(4){
	border-bottom:dotted 3px rgba(255,255,255,0.7);
}
#s06{
	padding-bottom: 320px;
}
#s06 .inner1{
	position: relative;
	padding-top: 260px;
}
#s06 .inner1::before{
	content: " ";
	width: 100%;
	height: 300px;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
	background: url("images/top/promise_bg1.jpg") no-repeat center top;
	background-size:cover;
}
#s06 .inner1 .container{
	position: relative;
	z-index: 2;
}
#s06 .inner1 ul{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
#s06 .inner1 ul li{
	position: relative;
	width: 30%;
	background: url("images/top/promise_bg2.png") no-repeat center center;
	background-size:contain;
	padding-top:180px;
	height: 350px;
}
#s06 .inner1 ul li:first-of-type,#s06 .inner1 ul li:last-of-type{
	margin-top: -60px;
}
#s06 .inner1 ul li .no{
	position: absolute;
	left: 0;
	top:40px;
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}
#s06 .inner1 ul li p{
  font-family: "Zen Maru Gothic", serif;
  font-weight: 700;
  font-style: normal;
	font-size:120%;
	text-align: center;
}
#s06 .inner1 ul li:nth-of-type(2){
	padding-top:90px;
}
#s06 .inner1 ul li:nth-of-type(2) .no{
	top:inherit;
	bottom:40px;
}
#s06 .text1{
	max-width: 500px;
	margin: 0 auto;
	font-size:95%;
}
#s06 section{
	position: relative;
}
/*#s06 .inner2::before{
	content: " ";
	width:50%;
	height:100%;
	position: absolute;
	top:0;
	left: 0;
	border-radius: 0 30px 30px 0;
	background: url("images/top/promise1.jpg") no-repeat center center;
	background-size:cover;
}*/
#s06 .inner3::before{
	content: " ";
	width:50%;
	height:100%;
	position: absolute;
	top:0;
	right: 0;
	border-radius:30px 0 0 30px;
	background: url("images/top/promise2.jpg") no-repeat center center;
	background-size:cover;
}
#s06 .inner4::before{
	content: " ";
	width:50%;
	height:100%;
	position: absolute;
	top:0;
	left: 0;
	border-radius: 0 30px 30px 0;
	background: url("images/top/promise3.jpg") no-repeat center center;
	background-size:cover;
}
#s06 section .wid01{
	margin-left: 52%;
	padding: 70px 0;
	min-height: 350px;
}
#s06 section .wid01 h3{
	margin-bottom: 30px;
	font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	font-size:130%;
}
#s06  section .wid01 p{
	line-height: 2;
}
#s06 section:nth-of-type(2) .wid01{
	margin-left: 0;
}

#s07{
	position: relative;
	background: #fff;
}
#s07::before{
	content: " ";
	width: 100%;
	height: 250px;
	position: absolute;
	top:-250px;
	left: 0;
	background: #fff;
 	border-radius: 50% / 100% 100% 0 0;
}
#s07 .container{
	margin-top: -250px;
	position: relative;	
}
.faq-bg{
	margin-bottom:20px;
	padding:20px;
	border:solid 1px #ecc6b5;
background: linear-gradient(to bottom,  #fcfcfc 0%,#ffffff 23%); 
	box-shadow: 0 0 3px #ccc;
	border-radius: 10px;
}

.faq-bg dt{
	position:relative;
	background:url("images/common/open.png") no-repeat right center;
	background-size:17px;
	padding:10px 20px;
	padding-left:80px;
	font-size:110%;
	font-weight: bold;
	z-index: 2;
}

.faq-bg dt.open{
	background:url("images/common/close.png") no-repeat right center;
	background-size:17px;
	z-index: 2;
	position: relative;
}

.faq-bg dt:before{
	position:absolute;
	top:0;
	left:0;
	content:" ";
	background:url("images/common/q.png") no-repeat;
	background-size:100%;
	width:60px;
	height:60px;
	z-index: 2;
}

.faq-bg dd{
	display:none;
	position:relative;
	margin-top:25px;
	padding-left: 80px;
	background:url("images/common/a.png") no-repeat left  top;
	background-size:60px;
	z-index: 2;
}
#s08 .inner1{
	position: relative;
	padding-top: 260px;
}
#s08 .inner1::before{
	content: " ";
	width: 100%;
	height: 300px;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
	background: url("images/top/flow_bg1.jpg") no-repeat center top;
	background-size:cover;
}
#s08 .container{
	position: relative;
	z-index: 2;
}
#s08 .inner2{
	position: relative;
	padding-bottom: 80px;
}
#s08 .inner2::before{
	content: " ";
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	top:30%;
	/*border-bottom: dotted 5px #fac6ad;*/
}
#s08 .inner2 ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#s08 .inner2 ul li{
	position: relative;
	width: 23%;
}
#s08 .inner2 ul li::after{
	content: url("images/top/arrow.png");
	position: absolute;
	right:-55px;
	top:27%;
}
#s08 .inner2 ul li:last-of-type::after{
	content: none;
}
#s08 .inner2 ul li h3{
	margin-bottom: 10px;
	font-family: "Zen Maru Gothic", serif;
  font-weight:700;
  font-style: normal;
	font-size:110%;
	text-align: center;
}
#contactus{
	background: url("images/common/contact_bg1.jpg") no-repeat;
	background-size:cover;
	color: #fff;
}

#contactus p{
	font-size:110%;
	text-shadow: 1px 1px 5px #c04b4b;
}
#contactus .boxstyle01{
	justify-content: center;
}
#contactus .boxstyle01 .link01{
	margin:2%;
}
/*------------------下層ページ------------------*/
#crumbs{
	padding:10px;
	background: #fff;
}
#breadcrumb ul{
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
}
#breadcrumb ul li{
	padding: 5px;
	font-size:85%;
}


/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑pcサイズ
----------------------------------
↓タブレットサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/
@media screen and (min-width: 1100px) and (max-width: 1299px) {
	.container{
		padding-left: 1%;
		padding-right: 1%;
	}
/*----------topページ------------*/
	.container2{
		margin-left: 1%;
		margin-right: 1%;
	}

}
@media screen and (max-width: 1099px){
	.container,.container2,.container4{
		padding-left: 2%;
		padding-right: 2%;
	}
	
	#head_wrap #mobile-head .logo img{
		width: 100px;
	}
	#head_wrap #mobile-head .logo div.text{
		font-size:85%;
	}
	#head_wrap #mobile-head .logo div.jp{
		font-size:70%;
	}

/*----------topページ------------*/

	.ulstyle01{
		justify-content:center;
	}
	.ulstyle01 li{
		width: 29%;
		margin: 2%;
	}
	#topimage .inner1 .img1 img{
		border-radius: 0 30px 30px 0;
	}
	#topimage .container{
		padding: 0 !important;
	}	
	
	
}


@media screen and (min-width: 768px) and (max-width: 1099px) {
/*----------共通-----------*/
	.tb-dnon{
		display:none;
	}
	.pc-dnon2{
		display:block;
	}
	#topimage{
		padding:85px 2% 2% 0;
	}

	#topimage .inner1 .inner1_text h2 .text2{
		font-size:140%;
	}
#topimage .inner2 .photo1{
	top:0%;
	width: 30%;
}
#topimage .inner2 .photo2{
	top:10%;
	width: 20%;
}
#topimage .inner2 .photo3{
	top:-10%;
	width: 20%;
}
	#topimage .inner2 p{
		line-height: 2;
	}
	#s01::before{
		height: 150px;
		top:-150px;
	}
	#s01 .inner1{
		margin-top: -22%;
	}
	#s05 ul li{
		width: 50%;
	}
	#s05 ul li:nth-of-type(even){
		border-right:none;
	}
	#s05 ul li:nth-of-type(5),#s05 ul li:nth-of-type(6){
		border-bottom:dotted 3px #fff;
	}
	#s06 .inner1 ul li p{
		font-size:110%;
	}
	#s08 .inner2::before{
		top:10%;
	}

}

/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑タブレットサイズ
----------------------------------
↓spサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/

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

}
.sp-dnon {
    display: none;
}
.pc-dnon,.pc-dnon2{
    display:  block;
}
.db-sp{
	display:block;
}
.sp-blk{
		display: block;
		margin: 0 auto !important;
}


/*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: 30px !important; }
.m80b-s { margin-bottom: 30px !important; }
.m01-s { margin-bottom: 10% !important; }
.p01-s { padding-top:7%; padding-bottom:10%; }
.p02-s { padding-top:5%; padding-bottom:5%; }
.p03-s { padding-top:7%; padding-bottom:7%; }
.p04-s { padding-top:1%; padding-bottom:1%; }
.f-left-pc, .f-right-pc,#m-right,#m-left{
    float: none;
}
.wid01,.wid02,.wid03,.wid04{
		width: 100%;
	}
	.wid05 {
    width: 100%;
}
	.cen-pc{text-align: left !important;}

/*----------footer------------*/
	#head_wrap #global-nav ul li a, #head_wrap.fixed #global-nav ul li a{
		padding: 7%;
	}
	#head_wrap #mobile-head{
		padding:1%;
	}
	footer ul{
		padding-top: 20px;
		margin-bottom: 40px;
	}
	.link01 a{
		padding:15px 20px;
	}
	.hstyle01 .en{
		font-size:350%;
	}
	.hstyle01 .ttl1{
		font-size:150%;
	}
	.hstyle02{
		font-size:120%;
	}
	.hstyle02.h-s1 .ttl{
		padding: 0 0 10px;
		line-height: 1.5;
	}
	.ulstyle01 li{
		width: 96% !important;
		border-bottom: solid 2px #f3e5da;
		padding-bottom: 20px;
	}
/*----------全体------------*/
	#topimage{
		position: relative;
		padding:85px 0 110px 0;
		background: url("images/top/top_bg1_sp.png") no-repeat center top;
		background-size:100%;
	}
	#topimage .inner1{
		position: relative;
		height:380px;
		margin-bottom: 20px;
	}

	#topimage .inner2 .container3{
		position: static;
		height: inherit;
	}
	#topimage .inner1 .inner1_text{
		width: 100%;
		margin-top: -10%;
		padding-top: 0;
	}
	#topimage .inner1 .inner1_text h2{
		text-align: center;
		margin-bottom:0;
	}
	#topimage .inner1 .inner1_text h2 .text1{
		font-size:5vw;
	}
	#topimage .inner1 .inner1_text h2 .text2{
		text-align: center;
		font-size:3vw;
	}
	#topimage .inner1 .link01{
		position: absolute;
		left: 0;
		bottom:-15%;
		width: 100%;
		text-align: center;
	}
	#topimage .inner1 .img1 {
		width: 60%;
		text-align: center;
	}
	#topimage .inner2 .photo1{
		width: 45%;
		top:39%;
	}
	#topimage .inner2 .photo2{
		width: 45%;
		top:41%;
	}
	#topimage .inner2 .photo3{
		width:38%;
		top:12%;
		right:0;
	}
	.lineoubo{
		right:1%;
		bottom:1%;
		width: 30%;
	}
	#topimage .inner2 p{
		line-height: 2;
	}
	#s01::before{
		height: 80px;
		top:-80px;
	}
	#s01 .inner1{
		margin-top: -80px;
	}
	ul.slider1 li{
		width: 150px;
	}
	#s01 .inner2{
		margin: 0 2%;
		padding-top: 15px;
		padding-bottom: 30px;
	}
	#s02{
		background: url("images/top/recommend_bg1_sp.png") no-repeat center top 100px;
		background-size:100%;
	}
	#s02 .boxstyle01 figure{
		padding: 0 25%;
		margin-top: 10px;
		margin-bottom: 10px;
		text-align: center;
	}
	#s02 .inner1{
		margin-bottom: 30px;
	}
	#s02 .ulstyle01 li div.m10b{
		margin-bottom: 5px !important;
	}
	#s02 .ulstyle01 li div img{
		width: 80%;
	}
	#s02 .ulstyle01 li:nth-of-type(4){margin-left: 2%;}
	#s02 .ulstyle01 li:nth-of-type(5){margin-right: 2%;}
	#s02 .ulstyle01 li p{
		padding: 0;
	}
	#s03 .boxstyle01 .wid01:first-of-type{
		margin-bottom: 30px;
	}
	#s03 h3.hstyle03{
		margin-bottom: 10px;
	}
	#s04 ul li{
		width: 50%;
	}
	#s04 ul li:nth-of-type(3), #s04 ul li:nth-of-type(4){
		margin-top: -30px;
	}
	#s05{
		padding-top: 0;
		padding-bottom: 20px;
	}
	#s05::before{
		height: 80px;
	}
	#s05 ul{
		padding: 20px 3% 0;
	}
	#s05 ul li{
		width: 100%;
		border-right:none;
	    border-bottom: dotted 3px rgba(255, 255, 255, 0.7);
		padding: 20px 0;
	}
	#s05 ul li:last-of-type{
		border-bottom:none;
	}
	#s06{
		padding-bottom: 120px;
	}
	#s06 .inner1::before{
		height: 150px;
	}
	#s06 .inner1{
		padding-top: 130px;
	}
	#s06 .inner1 ul li{
		width: 50%;
		padding-top:100px !important;
		height: 200px;
	}
	#s06 .inner1 ul li p{
		font-size:4vw;
	}
	#s06 .inner1 ul li .no{
		width: 40%;
		top:20px;
		left: 30%;
	}
	#s06 .inner1 ul li:first-of-type, #s06 .inner1 ul li:last-of-type{
		margin-top: 0;
	}
	#s06 .inner1 ul li:nth-of-type(2) .no{
		top:20px;
		bottom:inherit;
	}
	#s06 .inner1 ul li:nth-of-type(3){
		margin-top: -30px;
	}

	#s06 .inner1 ul{
		margin-bottom: 10px !important;
	}
	#s06 .inner2::before,#s06 .inner3::before,#s06 .inner4::before{
		position: relative;
		width: 100%;
		height: 180px;
		display: block;
		border-radius: 0;
	}
	#s06 section .wid01{
		margin-left: 0;
		padding: 10px 0 0 ;
		min-height: inherit;
	}
	#s06 section .wid01 h3{
		margin-bottom: 10px;
	}
	#s07::before{
		height: 80px;
		top:-80px;
	}
	#s07 .container{
		margin-top: -80px;
	}
	.faq-bg{
		padding: 10px;
	}
	.faq-bg dt:before{
		width: 40px;
		height: 40px;
	}
	.faq-bg dt{
		padding: 5px 15px;
		padding-left: 50px;
	}
	.faq-bg dd{
		margin-top: 15px;
		padding-left: 50px;
		background-size:40px;
		background-position:left top;
	}
	.faq-bg dt.open::after{
		background-size:19px;
	}
	#s08 .inner1::before{
		height: 150px;
	}
	#s08 .inner1{
		padding-top: 130px;
	}
	#s08 .inner2{
		padding-bottom: 40px;
	}
	#s08 .inner2 ul li{
		width: 48%;
	}
	#s08 .inner2 ul li::after{
		content: none;
	}
	#s08 .inner2::before{
		top:10%;
	}
	#s08 .inner2::after{
	content: " ";
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	top:48%;
	/*border-bottom: dotted 5px #fac6ad;*/
}
#s08 .inner2 ul {
justify-content: center;
}
.ulstyle02{
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.ulstyle02 li{
width: calc(96% / 2); /* 100%を3で割った値 */
margin: 1%;
	
}
/*----------------top------------------*/

}
@media screen and (max-width: 379px){
	#topimage .inner1{
		height:520px;
	}
}

@media screen and (max-width: 320px) {
	#head_wrap #mobile-head .logo div.text{
		font-size:80%;
	}


}