@charset "utf-8";

/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	border: 0;
	font-size: 100%;
	font: inherit;
	padding: 0;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}


img { vertical-align: bottom; }

/* ----------------------------------------------------
 
    margin
 
---------------------------------------------------- */
 
.mt00 {
	margin-top: 0px !important;
}
.mt05 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt55 {
	margin-top: 55px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt65 {
	margin-top: 65px !important;
}
.mt70 {
	margin-top: 70px !important;
}
.mt75 {
	margin-top: 75px !important;
}
.mt80 {
	margin-top: 80px !important;
}
.mt85 {
	margin-top: 85px !important;
}
.mt90 {
	margin-top: 90px !important;
}
.mt95 {
	margin-top: 95px !important;
}
.mt100 {
	margin-top: 100px !important;
}
.mr00 {
	margin-right: 0px !important;
}
.mr05 {
	margin-right: 5px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr15 {
	margin-right: 15px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.mr25 {
	margin-right: 25px !important;
}
.mr30 {
	margin-right: 30px !important;
}
.mr35 {
	margin-right: 35px !important;
}
.mr40 {
	margin-right: 40px !important;
}
.mr45 {
	margin-right: 45px !important;
}
.mr50 {
	margin-right: 50px !important;
}
.mr55 {
	margin-right: 55px !important;
}
.mr60 {
	margin-right: 60px !important;
}
.mr65 {
	margin-right: 65px !important;
}
.mr70 {
	margin-right: 70px !important;
}
.mr75 {
	margin-right: 75px !important;
}
.mr80 {
	margin-right: 80px !important;
}
.mr85 {
	margin-right: 85px !important;
}
.mr90 {
	margin-right: 90px !important;
}
.mr95 {
	margin-right: 95px !important;
}
.mr100 {
	margin-right: 100px !important;
}
.mb00 {
	margin-bottom: 0px !important;
}
.mb05 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb45 {
	margin-bottom: 45px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb55 {
	margin-bottom: 55px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb65 {
	margin-bottom: 65px !important;
}
.mb70 {
	margin-bottom: 70px !important;
}
.mb75 {
	margin-bottom: 75px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}
.mb85 {
	margin-bottom: 85px !important;
}
.mb90 {
	margin-bottom: 90px !important;
}
.mb95 {
	margin-bottom: 95px !important;
}
.mb100 {
	margin-bottom: 100px !important;
}
.ml00 {
	margin-left: 0px !important;
}
.ml05 {
	margin-left: 5px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml15 {
	margin-left: 15px !important;
}
.ml20 {
	margin-left: 20px !important;
}
.ml25 {
	margin-left: 25px !important;
}
.ml30 {
	margin-left: 30px !important;
}
.ml35 {
	margin-left: 35px !important;
}
.ml40 {
	margin-left: 40px !important;
}
.ml45 {
	margin-left: 45px !important;
}
.ml50 {
	margin-left: 50px !important;
}
.ml55 {
	margin-left: 55px !important;
}
.ml60 {
	margin-left: 60px !important;
}
.ml65 {
	margin-left: 65px !important;
}
.ml70 {
	margin-left: 70px !important;
}
.ml75 {
	margin-left: 75px !important;
}
.ml80 {
	margin-left: 80px !important;
}
.ml85 {
	margin-left: 85px !important;
}
.ml90 {
	margin-left: 90px !important;
}
.ml95 {
	margin-left: 95px !important;
}
.ml100 {
	margin-left: 100px !important;
}
.ml150 {
	margin-left: 150px !important;
}
/* ----------------------------------------------------
 
    padding
 
---------------------------------------------------- */
 
.pt00 {	padding-top: 0px !important;}
.pt05 {	padding-top: 5px !important;}
.pt10 {	padding-top: 10px !important;}
.pt15 {	padding-top: 15px !important;}
.pt20 {	padding-top: 20px !important;}
.pt25 {	padding-top: 25px !important;}
.pt30 {	padding-top: 30px !important;}
.pt35 {	padding-top: 35px !important;}
.pt40 {	padding-top: 40px !important;}
.pt50 {	padding-top: 50px !important;}
.pt60 {	padding-top: 60px !important;}
.pt70 {	padding-top: 70px !important;}
.pt80 {	padding-top: 80px !important;}
.pt90 {	padding-top: 90px !important;}
.pr00 {	padding-right: 0px !important;}
.pr05 {	padding-right: 5px !important;}
.pr10 {	padding-right: 10px !important;}
.pr15 {	padding-right: 15px !important;}
.pr20 {	padding-right: 20px !important;}
.pr25 {	padding-right: 25px !important;}
.pr30 {	padding-right: 30px !important;}
.pr35 {	padding-right: 35px !important;}
.pr40 {	padding-right: 40px !important;}
.pb00 {	padding-bottom: 0px !important;}
.pb05 {	padding-bottom: 5px !important;}
.pb10 {	padding-bottom: 10px !important;}
.pb15 {	padding-bottom: 15px !important;}
.pb20 {	padding-bottom: 20px !important;}
.pb25 {	padding-bottom: 25px !important;}
.pb30 {	padding-bottom: 30px !important;}
.pb35 {	padding-bottom: 35px !important;}
.pb40 {	padding-bottom: 40px !important;}
.pb50 {	padding-bottom: 50px !important;}
.pb60 {	padding-bottom: 60px !important;}
.pb70 {	padding-bottom: 70px !important;}
.pb80 {	padding-bottom: 80px !important;}
.pb90 {	padding-bottom: 90px !important;}
.pl00 {	padding-left: 0px !important;}
.pl05 {	padding-left: 5px !important;}
.pl10 {	padding-left: 10px !important;}
.pl15 {	padding-left: 15px !important;}
.pl20 {	padding-left: 20px !important;}
.pl25 {	padding-left: 25px !important;}
.pl30 {	padding-left: 30px !important;}
.pl35 {	padding-left: 35px !important;}
.pl40 {	padding-left: 40px !important;}
.pl50 {	padding-left: 50px !important;}


body {
	font-size: 18px;
	line-height: 1.7;
	font-weight: normal;
	font-family: 'Hind','Oswald', sans-serif;
	font-family: 'Noto Sans JP';
	text-align: left;
	color:#333;
	text-align: justify;
	overflow-x: hidden;
	font-feature-settings: "palt";
}

body .sp-item {
    display: none !important; }
  body .pc-item {
    display: block !important; }

  @media screen and (max-width : 600px ){
    body {
      min-width: inherit;
	  height:100%;
		padding-bottom: 100px;
	  }
      body .sp-item {
        display: block !important; }
      body .pc-item {
        display: none !important; }
	  body .sp-item img {
		width:100%;}
}

@media screen and (max-width : 600px ){
	.sp img{
		max-width:90%;
}
	.sp02 img{
		max-width:100%;
}
.sp03 img{
		max-width:94%;
}
}

@font-face {
font-family: 'Noto Sans JP';
src: url('assets/font/notosans_medium.woff') format('woff');
font-weight: 500;
font-display: swap;
}

@font-face {
font-family: 'Noto Sans JP';
src: url('assets/font/notosans_regular.woff') format('woff');
font-weight: 400;
font-display: swap;
}

@font-face {
font-family: 'Noto Sans JP';
src: url('assets/font/notosans_bold.woff') format('woff');
font-weight: 700;
font-display: swap;
}

@font-face {
font-family: 'Hind';
src: url('assets/font/hind_regular.woff') format('woff');
font-weight: 400;
font-display: swap;
}

@font-face {
font-family: 'Hind';
src: url('assets/font/hind_semibold.woff') format('woff');
font-weight: 600;
font-display: swap;
}



a.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.rollover:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.center {
	text-align: center;
}
.right {
	text-align:right;
}
.line_0 {
	line-height: 0;
}
.zindex {
	z-index: 200;
}
input[type=radio] {
	width: 15px;
	height: 15px;
	vertical-align: middle;
}
input[type=image]:hover{
		opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	}


/* ----------------------------------------------------

    text

---------------------------------------------------- */
em {
	text-decoration: underline;
  font-style: normal;
}
.bd_red {
	border-bottom: 1px solid #FF0004;
	padding-bottom: 2px;
}
.bd_red02 {
	border-bottom: 3px solid #FF0004;
	padding-bottom: 0px;
}
.red {
	color: #ff0000;
}
.yellow {
	background: linear-gradient(transparent 30%, #ff6 30%);
}

.bold {
	font-weight: bold;
}
strong {
	font-weight: bold;
}
.strike {
	text-decoration: line-through;
}
.ac {
	text-align: center !important;
}
.ar {
	text-align: right !important;
}
.al {
	text-align: left !important;
}
.bold {
	font-weight: bold !important;
}

img {
	line-height: 0;
	padding: 0;
	margin: 0;
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;/*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}

hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
/* ----------------------------------------------------
    clearfix の代用
    &#60;div class="hr"&#62;&#60;hr /&#62;&#60;/div&#62;
---------------------------------------------------- */

/* ここから書いていきましょう */
/* Header */
/* ----------------------------------------------------- */
.header{
	box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.21);
}
.header_box {
	width: 950px;
	padding: 12px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 auto;
}
.header_box img{
	width: 100%;
}
.logo {
	width: 410px;
	line-height: 1;
}
.logo p{
	font-size: 10px;
	margin-bottom: 5px;
}
.access {
	width: 108px;
	border-left:2px solid #ccc; 
	line-height: 1.4;
	font-size: 70%;
	padding-left: 8px;
	margin-left: 10px;
}
.tel {
	width: 290px;
	line-height: 1;
}
.line {
	width: 110px;
	line-height: 1;
	margin-left: 10px;
}
@media screen and (max-width : 600px ){
.header_box {
	width: 100%;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 0 3%;
}
.logo {
	width: 100%;
}
	.logo img{
		width: 86%;
	}
.logo p{
	font-size: 60%;
	margin-bottom: 5px;
}
.tel {
	width: 0;
}
	.access {
	width: 75px;
	border-left:2px solid #ccc; 
	line-height: 1.4;
	font-size: 42%;
	padding-left: 5px;
	margin-left: 8px;
}
	
header {
position: fixed;
	z-index: 999;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
	height: 57px;
	width: 100%;
	box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.21);
}


}


nav.globalMenuSp{
 display: flex;
 z-index:1000;
 flex-direction: row;
  text-align:center;
	background-color: #fff;
	padding: 10px 0 13px;
	box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.21);
}


.navToggle{
 display: none;
}

nav.globalMenuSp{
 -webkit-transform: translateX(0);
 transform: translateX(0);
}

nav.globalMenuSp ul{
width: 950px;
 display: flex;
 justify-content: space-around;
}

nav.globalMenuSp ul li{
 border-bottom:none;
 text-align:center;
 font-size:90%;
}


nav.globalMenuSp ul {
    background: none;
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: 0;
}
nav.globalMenuSp ul li a {
    display:block;
    padding: 0px 0px;
    color: #333;
    text-decoration:none;
    top: 50%;
    right: 50%;
    margin: 0 auto;

}
.small {
	font-size: 16px;
}


@media screen and (max-width : 600px ){
/* ハンバーガーメニューの記述 */

.navToggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right: 0;
	height:50px;
    top: 9px;
    width: 42px;
    cursor: pointer;
    z-index: 3;
    text-align: center;
}

.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 23px;
    border-bottom: solid 2px #666;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
}

.navToggle span:nth-child(1) {
    top: 9px;
}

.navToggle span:nth-child(2) {
    top: 18px;
}

.navToggle span:nth-child(3) {
    top: 27px;
}
.navToggle span:nth-child(4) {
    border: none;
    color: #666;
    font-size: 10px;
    font-weight: bold;
    top: 31px;
}

/* タップ後の記述*/

/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}


/* メニューの記述 */


nav.globalMenuSp {
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    color: #666;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.3s;
    width: 100%;
	border-bottom:1px solid #ccc;
}

nav.globalMenuSp ul {
    background: rgba(246, 246, 246, 1);
    margin: 0 auto;
    height: 100%;
    padding-top: 0;
    padding-bottom: 0;
}

nav.globalMenuSp ul li {
    font-size: 18px;
    font-weight: bold;
	border-bottom:1px solid #CCC;

}

nav.globalMenuSp ul li a {
    display:block;
    padding: 20px 0px;
    color: #666;
    text-decoration:none;
    top: 50%;
    left: 50%;
    margin: 0 auto;

}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
    transform: translateY(0%);
}

}





.nav_list{
  display: flex;
  justify-content: space-around;
}
.nav_content {
	width: 100%;
	background-color: #ffcc00;
	padding: 10px 0;
  z-index: 99;
}

.drawer_hidden {
  display: none;
}
ul{
margin: 0 auto;
  width: 950px;
 display: flex;
 justify-content: space-around;
}
li{
  list-style: none;
	font-weight: bold;
}
li a:link{ text-decoration:none; color:#333333;}
li a:visited{ text-decoration:none; color:#333333;}
li a:hover{ text-decoration:none; color:#333333;}

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


/* ここから下がハンバーガーメニューに関するCSS */
  
/* チェックボックスを非表示にする */
.drawer_hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  display: flex;
  height: 50px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100;/* 重なり順を一番上にする */
  cursor: pointer;
}

/* ハンバーガーメニューのアイコン */
.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 20px;
  border-radius: 3px;
  background: #333;
  transition: 0.5s;
  position: absolute;
}

/* 三本線の一番上の棒の位置調整 */
.drawer_open span:before {
  bottom: 8px;
}

/* 三本線の一番下の棒の位置調整 */
.drawer_open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer_input:checked ~ .drawer_open span {
  background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer_input:checked ~ .drawer_open span::before {
  bottom: 0;
  transform: rotate(45deg);
}

#drawer_input:checked ~ .drawer_open span::after {
  top: 0;
  transform: rotate(-45deg);
}
  
/* メニューのデザイン*/
.nav_list{
  background-color:#fff;
  display: flex;
  justify-content: space-around;
}
ul{
  width: 50%;
 display: flex;
 flex-direction: column;
 justify-content: space-around;
}
.nav_content {
  width: 100%;
  height: 100%;
	padding: 0;
  position: fixed;
  top: 0;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #fff;
  transition: .5s;
}

/* メニュー黒ポチを消す */
.nav_list {
  list-style: none;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}
}
.main {
	background: url("assets/images/reason_bg.png");
}
.main h1 {
	max-width: 1000px;
	display: block;
	margin: 0 auto;
}

.main h1 img {
	width: 110%;
}
.main_txt{
	border-top: 4px solid #333;
	background: #fff;
	border-bottom: 4px solid #333;
	padding: 15px 0;
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.5;
}
@media screen and (max-width : 600px ){
	.main h1 {
	max-width: 100%;
	display: block;
	margin: 0 auto;
		padding: 57px 0 0 0;
}
.main h1 img {
	width: 100%;
}
.main_txt{
	border-top: none;
	background: #fff;
	border-bottom: none;
	padding: 6px 0 15px;
	text-align: center;
	font-size: 5.7vw;
	font-weight: 700;
	line-height: 1.5;
}
}
.point{
	margin: 0 auto;
	background: #fcf059;
	padding: 30px 0 60px;
}
.point h2{
	text-align: center;
	margin-bottom: 10px;
}
.point_box{
	width: 750px;
	background: #fff;
	border-radius: 5px;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	margin: 0 auto;
	padding: 30px 0;
}
.point_box ul{
	width: 88%;
	margin: 0 auto;
	display: block;
}
.point_box li{
	background: url("assets/images/check1.png") no-repeat;
	background-position: left top 6px;
	background-size:26px 21px; 
	margin: 0 auto 28px;
	padding: 0 0 0 37px;
	font-size: 130%;
	line-height: 1.5;
}
@media screen and (max-width : 600px ){
.point{
	padding: 20px 0 28px;
}
	.point h2 img{
		width: 96%;
	}
.point_box{
	width: 90%;
	background: #fff;
	border-radius: 5px;
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
	margin: 0 auto;
	padding: 15px 0 10px;
	box-sizing: border-box;
}
.point_box ul{
	width: 90%;
	margin: 0 auto;
	display: block;
}
.point_box li{
	background: url("assets/images/check1.png") no-repeat;
	background-position: left top 6px;
	background-size:20px 15px; 
	margin: 0 auto 20px;
	padding: 0 0 0 27px;
	font-size: 100%;
	line-height: 1.5;
}
}


.step {
	padding: 80px 0;
	
}
.step h2 {
	font-size: 38px;
	color: #333;
	font-weight: bold;
	margin-bottom: 45px;
	text-align: center;
}
.step h2 span{
	padding-bottom: 10px;
	border-bottom: 5px solid #c6f4cc;
}
.step_in{
	width: 750px;
	margin: 0 auto;
}
.step_in img{
	margin-top: 20px;
}
.step_in .txt{
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	margin: 10px auto 30px;
	background: #fce6f0;
	padding: 20px 0;
}

.step h3{
	width: 750px;
	margin: 0 auto 15px;
	border-top: 2px solid #e4005c;
	border-bottom: 2px solid #e4005c;
	font-size:30px;
	color: #e4005c;
	font-weight: bold;
	padding: 8px 0;
	line-height: 1.3;
}

.step_box{
	display: flex;
	justify-content: space-between;
	width: 750px;
	box-sizing: border-box;
	padding: 0;
	margin: 0 auto 30px;
	background: #fff;
}
.step_box_l{
	width: 100px;
	line-height: 0;
}
.step_box_l img{
	width: 100%;
	margin-top: 0;
}
.step_box_r{
	width: 630px;
	text-align: left;
	font-size: 18px;
}
.life100 {
	margin: 0 auto;
	background: #fcfbf0;
	padding: 40px 0 10px;
}
@media screen and (max-width : 600px ){
.step {
	padding: 30px 0;
	
}
.step h2 {
	font-size: 30px;
	color: #333;
	font-weight: bold;
	margin-bottom: 25px;
	text-align: center;
}
.step h2 span{
	padding-bottom: 10px;
	border-bottom: 5px solid #c6f4cc;
}
.step_in{
	width: 90%;
	margin: 0 auto;
}
.step_in img{
	margin-top: 20px;
	width: 100%;
}
.step_in .txt{
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	margin: 5px auto 30px;
	background: #fce6f0;
	padding: 15px 5%;
	box-sizing: border-box;
}

.step h3{
	width: 100%;
	margin: 0 auto 10px;
	border-top: 2px solid #e4005c;
	border-bottom: 2px solid #e4005c;
	font-size:20px;
	color: #e4005c;
	font-weight: bold;
	padding: 8px 0;
	line-height: 1.3;
}

.step_box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	margin: 0 auto 30px;
	background: #fff;
}
.step_box_l{
	width: 40%;
	line-height: 0;
	margin: 0 auto 10px;
}
.step_box_l img{
	width: 100%;
	margin-top: 0;
}
.step_box_r{
	width: 100%;
	text-align: left;
	font-size: 18px;
}
.life100 {
	padding: 20px 0 10px;
}
	.life100 img{
		width: 95%;
	}
}


.trouble {
	background: #fff;
	padding: 0 0 0;
}
.trouble h2 {
	text-align: center;
	background: #28a56c;
	font-weight: bold;
	font-size:40px;
	color: #fff;
	margin: 0 auto 20px;
	line-height: 1.3;
	padding: 20px 0;
}
.trouble h3{
	text-align: center;
	max-width: 750px;
	margin:0 auto 20px;
}
.trouble h3 img{
	width: 100%;	
}
.trouble_box ul{
	width: 750px;
	margin: 0 auto 50px;
	display: block;
}
.trouble_box li{
	background: url("assets/images/check2.png") no-repeat;
	background-position: left top 4px;
	background-size:27px 24px; 
	margin: 0 auto 13px;
	padding: 0 0 0 34px;
	font-size: 132%;
	line-height: 1.5;
}

@media screen and (max-width : 600px ){
	.trouble {
	background: #fff;
	padding: 0 0 0;
}
.trouble h2 {
	text-align: center;
	background: #28a56c;
	font-weight: bold;
	font-size:5.5vw;
	color: #fff;
	margin-bottom: 20px;
	line-height: 1.3;
	padding: 15px 0;
}
.trouble h3{
	text-align: center;
	max-width: 750px;
	margin:0 auto 20px;
}
.trouble h3 img{
	width: 96%;	
}
.trouble_box ul{
	width: 90%;
	margin: 0 auto 50px;
	display: block;
}
.trouble_box li{
	background: url("assets/images/check2.png") no-repeat;
	background-position: left top 4px;
	background-size:21px 18px; 
	margin: 0 auto 13px;
	padding: 0 0 0 26px;
	font-size: 100%;
	line-height: 1.5;
}
	
}
.voice_ttl1 {
	text-align: center;
	margin-bottom: -60px;
}
.voice {
	text-align: center;
	background: #fcf059;
	padding: 87px 0 30px;
}

.voice h2{
	margin: -20px auto 20px;
}
.voice_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 750px;
	border: 2px solid #ccc;
	box-sizing: border-box;
	padding: 17px 25px 15px 20px;
	margin: 0 auto 30px;
	background: #fff;
	border-radius: 5px;
}
.voice_box_l{
	width: 126px
}
.voice_box_r{
	width: 550px;
	text-align: left;
	font-size: 22px;
	font-weight: bold;
}

@media screen and (max-width : 600px ){
.voice_ttl1 {
	width: 100%;
	text-align: center;
	margin-bottom: -30px;
}
	.voice_ttl1 img{
		width: 100%;
	}
.voice {
	text-align: center;
	background: #fcf059;
	padding: 55px 0 10px;
}

.voice h2{
	margin: -20px auto 15px;
}
	.voice h2 img{
		width: 96%;
	}
.voice_box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: 90%;
	border: 2px solid #ccc;
	box-sizing: border-box;
	padding: 14px 0 20px 0;
	margin: 0 auto 20px;
	background: #fff;
	border-radius: 5px;
}
.voice_box_l{
	width: 40%;
}
	.voice_box_l img{
	width: 100%;
}
.voice_box_r{
	width: 90%;
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	margin-top: 10px;
}
	
}
.reason {
	background: #fcfbf0;
	padding: 60px 0 30px;
}
.reason_box{
	width: 750px;
	margin: 0 auto 70px;
}
.reason h2{
	text-align: center;
	margin-bottom: 60px;
}
.reason_number{
	display: block;
	margin: -25px auto 12px;
	background: #27a36d;
	color: #fff;
	width: 6em;
	text-align: center;
	font-weight: bold;
	z-index: 200;
	font-size: 30px;
	line-height: 1.5;
}
.reason_ttl{
	background: url("assets/images/reason_bg.png");
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
	width: 750px;
	margin: 0 auto 25px;
	text-align: center;
	padding: 0 0 15px;
	z-index: 100;
}

.reason_box img{
	width: 100%;
	margin-bottom: 20px;
}
.reason_ttl h3{
		font-size: 40px;
	font-weight: bold;
	line-height: 1.3;
	text-shadow: 2px 2px 0 #fff; 
}

.goyoyaku {
	border: #e4005c solid 5px;
	width: 700px;
	border-radius: 5px;
	box-sizing: border-box;
	background: #fff;
	margin: 0 auto 0;
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
	padding: 0 0 27px;
}
.goyoyaku img{
	width: 100%; 
}
.goyoyaku .btn img{
	width: 94%;
	margin: 5px 0 0;
}

@media screen and (max-width : 600px ){
.reason {
	background: #fcfbf0;
	padding: 30px 0 10px;
}
.reason_box{
	width: 90%;
	margin: 0 auto 40px;
}
.reason h2{
	text-align: center;
	margin-bottom: 40px;
}
	.reason h2 img{
		width: 90%;
	}
.reason_number{
	display: block;
	margin: -15px auto 8px;
	background: #27a36d;
	color: #fff;
	width: 6em;
	text-align: center;
	font-weight: bold;
	z-index: 200;
	font-size: 19px;
	line-height: 1.5;
}
.reason_ttl{
	background: url("assets/images/reason_bg.png");
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
	width: 100%;
	margin: 0 auto 25px;
	text-align: center;
	padding: 0 0 12px;
	z-index: 100;
}

.reason_box img{
	width: 100%;
	margin-bottom: 20px;
}
.reason_ttl h3{
		font-size: 6vw;
	font-weight: bold;
	line-height: 1.5;
}
.goyoyaku {
	border: #e4005c solid 3px;
	width: 90%;
	box-sizing: border-box;
	background: #fff;
	margin: 0 auto 5px;
	text-align: center;
	font-size: 4.3vw;
	font-weight: bold;
	line-height: 1.7;
	padding: 0 0 3%;
}
.goyoyaku img{
	margin-top:0; 
}	
}



@media screen and (max-width : 600px ){
}

.footer_btn {
	display: none;
}

footer {
	margin: 80px 0 0;
	background: #f4ffde;
	padding: 20px 0 0;
}
.footer_box{
	width: 1000px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 20px;
}


.footer_box_l{
	width: 400px;
	font-size: 12px;
	color: #6E3E3E
}
.footer_box_l img{
	width: 100%;
	margin-top: 5px;
}
.footer_box_r{
	width: 600px;
	text-align: right;
	font-size: 12px;
}
.copy {
	background: #79bf60;
	text-align: center;
	font-size: 10px;
	padding: 10px 0;
	margin-top: 14px;
	color: #fff;
}
footer .menu{
  text-align:center;
	padding: 10px 0 5px;
	font-size:18px;
	margin-top: 20px;
}

footer.menu ul{
width: 950px;
 display: flex;
 justify-content: space-around;
font-size:18px;
}

footer.menu ul li{
 border-bottom:none;
 text-align:center;
}

footer.menu ul li a {
font-size:18px;
}

footer.menu li a:link{ text-decoration:none; color:#333333;font-size: 18px;}
footer.menu li a:visited{ text-decoration:none; color:#333333;}
footer.menu li a:hover{ text-decoration:none; color:#333333;}


@media screen and (max-width : 600px ){
	footer{
	display: none;
	}

	.footer_btn {
		margin-top: 20px;
		width: 100%;
		display: flex;
		line-height: 1;
		 position: fixed;
    right: 0;
    bottom: 0;
}
	.footer_btn img {
		width:100%;
	}
	.btn1 {
		width: 50%;
	}
.btn2 {
		width: 50%;
	}

}
.r2 {
	text-align: right;
	font-size: 12px;
	margin-top:20px;
}

@media screen and (max-width : 600px ){
.r2 {
	text-align: right;
	font-size: 12px;
	margin-top:10px;
}
}

html {
    scroll-behavior: smooth;
}
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 200;
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
}

@media (hover: hover) and (pointer: fine) {
    .pagetop:hover, .pagetop:hover .pagetop__arrow {
        border-color: #3293e7;
    }
	.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 200;
}
}


.p_navi {
	max-width: 900px;
	margin: 20px auto 40px;
	text-align: left;
	font-size: 14px;
	z-index: 100;
}

.p_navi a{
	color: #666;
}
.p_navi a:hover{
	color: #999;
}
.p_navi a:visited{
	color: #999;
}

@media screen and (max-width : 768px ){
	.p_navi {
	width: 90%;
	margin: 10px auto 0;
	text-align: left;
	font-size: 14px;
}
	.pagetop{
		display: none;
	}
.pagetop__arrow {
    display: none;
}
}

.contents h1{
	text-align: center;
	font-size: 38px;
	font-weight: 700;
	background: linear-gradient(to right, #108957 0%,#add800 100%); 
	 background-size: 200% 200%;/*サイズを大きくひきのばす*/
  animation: bggradient 10s ease infinite;
	color: #fff;
	letter-spacing: 1px;
	padding: 30px 0;
}
@keyframes bggradient{
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.contents h2{
	background: #f7f5f5;
	border-left: 4px #009100 solid;
	width: 750px;
	margin: 0 auto 30px;
	padding: 10px 0 10px 15px;
	font-size: 1.4em;
	font-weight: 700;
	box-sizing: border-box;
}

.contents_in{
	width: 750px;
	margin: 0 auto 80px;
}
.contents_in img{
	width: 100%;
	margin: 0 0 10px;
}

.contents_in .pic{
	width: 750px;
	margin: 0 0 20px;
}

.contents_in .pic img{
	width: 100%;
}

.contents_in p{
	margin-bottom: 60px;
}
@media screen and (max-width : 768px ){
.contents h1{
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 1px;
	padding: 25px 0;
	margin-top: 57px;
}
.contents h2{
	background: #f7f5f5;
	border-left: 4px #009100 solid;
	width: 100%;
	margin: 20px auto 20px;
	padding: 10px 20px 10px 15px;
	font-size: 1.1em;
	font-weight: 700;
	box-sizing: border-box;
	line-height: 1.5;
}

.contents_in{
	width: 90%;
	margin: 0 auto 30px;
}

.contents_in .pic{
	width: 100%;
	margin: 0 0 15px;
}

.contents_in .pic img{
	width: 100%;
}

.contents_in p{
	margin-bottom: 60px;
}
}
.sec .sec08{
	padding: 0 0 60px;
}

.sec08 table{
	width: 100%;
	border: 1px solid #dcc7e2;
	font-feature-settings: "palt";
	letter-spacing: 2px;
	line-height: 1.5;
	margin-bottom: 10px;
}

.sec08 thead th{
	background: #cc3399;
	border: 1px solid #bababa;
	padding: 8px 0;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 26px;
}
.sec08 thead th img{
	width: 70%;
}

.sec08 tbody th,
.sec08 tbody td{
	border: 1px solid #bababa;
	border-collapse: collapse;
}
.sec08 tbody th {
	box-sizing: border-box;
	padding: 20px 0 20px 30px;
	width: 200px;
	font-weight: 500;
}


.sec08 tbody th.pc-item{
	display: table-cell!important;
}

.sec08 tbody th img{
	max-width: 92%;
	margin: 0 auto;
	display: block;
}

.sec08 tbody td{
	padding: 10px 24px 14px;
	background: #fff;
}



@media screen and (max-width: 640px) {
	.sec .sec08 {
			padding-top: 0;
		}
	
		.sec08 table {
			width: 100%;
			border: 1px solid #dcc7e2;
			border-collapse: separate;
			background: #fff;
			letter-spacing: 0;
			font-size: 1em;
	line-height: 1.3;
		}
	
		.sec08 thead th {
			border: none;
			padding: 8px 0;
			text-align: center;
			font-size: 25px;
		}
	

		.sec08 tbody tr{
			display: block;
		}
	
		.sec08 tbody th,
		.sec08 tbody td {
			border: none;
			display: block;
		}

		.sec08 tbody{
			display: block;
			width: 94%;
			margin: 0 auto;
			padding-top: 3%;
		} 

		.sec08 tbody th.pc-item {
			display: none !important;
		}

		.sec08 tbody th {
			padding: 8px 10px 8px;
			text-align: center;
			width: 100%;
			font-weight: bold;
		}
	
		.sec08 tbody tr:nth-of-type(1) th img {
			max-width: 90%;
			margin: auto;
		}

		.sec08 tbody tr:nth-of-type(2) th img {
			max-width: 40%;
		}

		.sec08 tbody tr:nth-of-type(3) th img {
			max-width: 40%;
		}
	
		.sec08 tbody th img {
			max-width: 100%;
			margin: 0 auto;
			display: block;
		}
	
		.sec08 tbody td {

			padding: 8px 0 17px;
			text-align: center;
			line-height: 1.4;
		}

		.sec08 tbody tr:nth-of-type(3) td {
		}
	
}

.office{
	padding: 0 0 80px;
	font-size: 16px;
	width: 750px;
	line-height: 1.7;
	margin: 0 auto;
}

.contents_in dl {
  display: flex;
  flex-wrap: wrap;
	letter-spacing: 2px;
	margin: 0 0 20px;
}
.contents_in dl dt {
  width: 20%;
line-height: 1.7;
border-bottom: 1px solid #ccc;
padding: 18px 0 18px
}
.contents_in dl dd {
  width: 80%;
	line-height: 1.7;
	border-bottom: 1px solid #ccc;
	padding: 18px 0 18px
}
.contents_in .telephone{
	font-size: 2em;
	font-weight: 700;
	line-height: 1;
}
.contents_in .telephone a:link{ text-decoration:none; color:#333333;}
.contents_in .telephone a:visited{ text-decoration:none; color:#333333;}
.contents_in .telephone a:hover{ text-decoration:none; color:#333333;}

.v_box p{
	margin-bottom: 0;
}

.v_box{
	margin-bottom: 70px;
}
.v_box h3{
	background: url("assets/images/reason_bg.png");
	font-size: 30px;
	font-weight: bold;
	padding: 15px 20px 15px;
	border-left: #14A347 4px solid;
	box-sizing: border-box;
	line-height: 1.5;
	margin-bottom: 20px;
}
.v_box img{
	width: 60%;
	display: block;
	margin: 0 auto 20px;
}
@media screen and (max-width : 600px ){
.contents_in dl {
  display: flex;
  flex-wrap: wrap;
	letter-spacing: 0;
	margin: 0 0 40px;
}
.contents_in dl dt {
	line-height: 1.7;
  width: 25%;
	padding: 14px 0;
}
.contents_in dl dd {
	line-height: 1.7;
  width: 75%;
	padding: 14px 0;
}
.v_box{
	margin-bottom: 50px;
}
.v_box h3{
	background: url("assets/images/reason_bg.png");
	font-size: 22px;
	font-weight: bold;
	padding: 15px 20px 15px;
	border-left: #14A347 4px solid;
	box-sizing: border-box;
	line-height: 1.5;
	margin-bottom: 20px;
	text-shadow: 2px 2px 0 #fff; 
}
.v_box img{
	width: 60%;
	display: block;
	margin: 0 auto 15px;
}
}

/* 240713 追加 */
/* -------------------- */
.contact-form input,
.contact-form select,
.contact-form textarea{
	padding:10px;
}
.contact-form input,
.contact-form textarea{
	width:90%;
}

.contact-form .submit input{
display:block;
	width:50%;
	margin:0 25% 0 25%;
}

.contact-form .doui input{
	width:auto;
}
.contact-form table{
	width:700px;
	margin: 2em auto 4em;
}
.contact-form th{
	font-size:0.9em;
	width:30%;
	background:#f6eaf9;
	padding:10px;
	border:1px solid #cccccc;
}
.contact-form th span{
	margin-left:5px;
	color:#ffffff;
	font-size:0.75em;
	background:#696294;
	border-radius:5px;
	padding:3px 6px 3px 6px;
}
.contact-form td{
	padding:10px;
	border:1px solid #cccccc;
}
.contact-form td p{
	padding:0;
	margin:0;
}
/* 問い合わせCTA削除 */
.page-id-7 .contact_area{
	display:none;
}
.contact-txt{text-align:center;}


@media screen and (max-width : 600px ){
.contact-form input,
.contact-form select,
.contact-form textarea{
	padding:8px 5px;
}
.contact-form input,
.contact-form textarea{
	width:95%;
}

.contact-form .submit input{
display:block;
	width:90%;
	margin:0 5% 0 5%;
}


.contact-form table{
	width:94%;
	margin: 1em 3% 2em;
}
.contact-form th{
display:block;
	font-size:0.9em;
	width:auto;
	background:#f6eaf9;
	padding:5px;
	border:1px solid #cccccc;
}
.contact-form td{
display:block;
	padding:5px;
	border:1px solid #cccccc;
}

.contact-txt{
font-size:0.85em;
text-align:left;
line-height:1.5;
padding:0 15px;
}



