@charset "UTF-8";
/*
Theme Name: Smarre
Author: LeadDesign
Description: All
*/
/* CSS Document */
/* 共通部分 */
html, 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
}
ul {
	list-style: none;
}
* {
	box-sizing: border-box;
}
/* PCレイアウト : xxx px およびそれ以上　＋　共通 */
/*==========================================

 html、body、common
 
===========================================*/
html {
	font-size: 100%;
	/*ベース10px*/
	line-height: 1.5em;
}
body {
	width: 100%;
	font-size: 16px;
	line-height: 1.7;
	color: #3c3c3b;
	-webkit-text-size-adjust: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
}
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
img,
nav,
section {
	display: block;
}
h1 {
	font-size: 21px;
	font-family: sans-serif;
}
h2 {
	font-size: 18px;
	font-family: sans-serif;
}
h3 {
	font-size: 18px;
	font-family: sans-serif;
}
h4 {
	font-family: sans-serif;
}
a {
	text-decoration: none;
	color: #000000;
}
img {
	width: auto;
	max-width: 100%;
	max-height: 100%;
	display: block;
}
.visible-desktop {
	display: none !important;
}
.mt0 {
	margin-top: 0px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mr0 {
	margin-right: 0px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.mr30 {
	margin-right: 30px !important;
}
.mr40 {
	margin-right: 40px !important;
}
.mr50 {
	margin-right: 50px !important;
}
.mb0 {
	margin-bottom: 0px !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.ml0 {
	margin-left: 0px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml20 {
	margin-left: 20px !important;
}
.ml30 {
	margin-left: 30px !important;
}
.ml40 {
	margin-left: 40px !important;
}
.ml50 {
	margin-left: 50px !important;
}
.pt0 {
	padding-top: 0px !important;
}
.pt10 {
	padding-top: 10px !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pt30 {
	padding-top: 30px !important;
}
.pt40 {
	padding-top: 40px !important;
}
.pt50 {
	padding-top: 50px !important;
}
.pr0 {
	padding-right: 0px !important;
}
.pr10 {
	padding-right: 10px !important;
}
.pr20 {
	padding-right: 20px !important;
}
.pr30 {
	padding-right: 30px !important;
}
.pr40 {
	padding-right: 40px !important;
}
.pr50 {
	padding-right: 50px !important;
}
.pb0 {
	padding-bottom: 0px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pb30 {
	padding-bottom: 30px !important;
}
.pb40 {
	padding-bottom: 40px !important;
}
.pb50 {
	padding-bottom: 50px !important;
}
.pl0 {
	padding-left: 0px !important;
}
.pl10 {
	padding-left: 10px !important;
}
.pl20 {
	padding-left: 20px !important;
}
.pl30 {
	padding-left: 30px !important;
}
.pl40 {
	padding-left: 40px !important;
}
.pl50 {
	padding-left: 50px !important;
}
/*
## t_l t_c t_r
 
文字の揃え指定
 
```
	<p class="t_l">text align left</p>
	<p class="t_c">text align center</p>
	<p class="t_r">text align right</p>
	
```
*/
.t_l {
	text-align: left !important;
}
.t_c {
	text-align: center !important;
}
.t_r {
	text-align: right !important;
}
@media only screen and (max-width: 624px) {
  .sp-t_l {
	  text-align: left !important;
  }
}
@media only screen and (max-width: 624px) {
  .sp-t_c {
	  text-align: center !important;
  }
}
@media only screen and (max-width: 624px) {
  .sp-t_r {
	  text-align: right !important;
  }
}
/* iPhone X・XS・XS MAX・XR・その他ノッチ付きデバイスへの対応 */
body {
    padding-top: constant(safe-area-inset-top);
    padding-right: constant(safe-area-inset-right);
    padding-bottom: constant(safe-area-inset-bottom);
    padding-left: constant(safe-area-inset-left);
}
/* video */
video {
	width: 100%;
	height: auto;
}
/* common */
.cta {
	display: inline-block;
	padding: 0.5em 1em;
	text-decoration: none;
	background: #ff0031;/*ボタン色*/
	color: #fff;
	border-bottom: solid 4px #aa3a02;
	border-radius: 3px;
}
.cta:active {
	/*ボタンを押したとき*/
	-ms-transform: translateY(4px);
	-webkit-transform: translateY(4px);
	transform: translateY(4px);/*下に動く*/
	border-bottom: none;/*線を消す*/
}
.cta_box {
	text-align: center;
}
.over_container {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
/* header */
header {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 20px 20px 20px;
	background: rgba(255,255,255,0.7);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}
header div h1 {
	text-align: left;
	font-size: 12px;
	padding: 5px 0;
}
header div img {
	width: 200px;
}
/* main visual */
.main_visual {
	background-image: url(../img/shindan/main_visual.jpg);
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding: 120px 0 50px 0;
}
.main_visual .img_01 {
	width: 300px;
	margin: 0 auto;
	padding: 0 0 30px 0;
}
.main_visual .img_02 {
	width: 480px;
	margin: 0 auto;
	padding: 0;
}
.main_visual h2 {
	text-align: center;
	font-size: 42px;
}
/* section one */
.section_one {
	background-color: #fffeee;
	padding: 50px 0;
}
.section_one ul {
	display: -webkit-flex;
	display: flex;
	justify-content: space-around;
}
.section_one ul li {
	width: 33.3333%;
	text-align: center;
}
.section_one ul li img {
	width: 150px;
	height: 150px;
	margin: 0 auto;
}
.section_one ul li h2 {
	font-size: 16px;
	padding: 10px 0 0 0;
	font-weight: bold;
}
.section_one ul li span {
	background: linear-gradient(transparent 60%, #f9ec48 0%);
}
.section_one ul li p {
	text-align: left;
	padding: 15px 20px 0 20px;
	font-size: 13px;
	font-weight: 400;
}
.section_one p {
	text-align: center;
	padding: 20px 0 0 0;
	font-weight: bold;
}
/* section two */
.section_two {
	padding: 50px 0;
}
.two_column {
	display: -webkit-flex;
	display: flex;
}
.two_column .column_a {
	width: 46%;
	margin: 0 3% 0 1%;
}
.two_column .column_b {
	width: 46%;
	margin: 0 1% 0 3%;
}
.two_column div h3 {
	text-align: center;
	font-size: 14px;
	line-height: 2;
}
.two_column div img {
	width: 100px;
	margin: 0 auto;
	padding: 20px 0;
}
.two_column div p {
	font-size: 13px;
	line-height: 2.2;
}
/* section three */
.section_three {
	background-image: url(../img/shindan/three_steps.jpg);
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding: 50px 0;
}
.section_three div h3 {
	text-align: center;
	font-size: 32px;
	font-weight: 300;
	padding: 0 0 20px 0;
}
.three_column {
	display: -webkit-flex;
	display: flex;
	padding: 0 0 30px 0;
}
.three_column li {
	width: 31%;
	margin: 0 1%;
	background: rgba(255,255,255,0.7);
	border-radius: 4px;
}
.three_column li span {
	display: block;
	text-align: center;
	font-size: 12px;
	padding: 15px 0 15px 0;
}
.three_column li h4 {
	text-align: center;
	padding: 0 0 20px 0;
}
.three_column li p {
	padding: 0 10px 20px 10px;
	font-size: 14px;
	line-height: 2;
}
/* section four */
.section_four {
	padding: 50px 0;
}
.section_four h3 img {
	width: 300px;
	margin: 0 auto;
	padding: 0 0 30px 0;
}
.section_four ul {
	padding: 0 0 30px 0;
}
.section_four .two_column h4 {
	text-align: center;
	font-size: 14px;
	line-height: 2;
}
.section_four .two_column .voice_img {
	width: 100%;
}
.section_four .two_column img {
	width: 140px;
	margin: 0 auto;
	padding: 20px;
}
.section_four .two_column p {
	font-size: 13px;
	line-height: 2.2;
}
/* footer */
footer {
	background-color: #3c3c3b;
}
footer p {
	text-align: center;
	color: #fff;
	font-size: 12px;
	padding: 5px 0;
}
/* break points */
@media all and (max-width: 600px) {
	/* common */
	.over_container {
		padding: 0 20px;
	}
	/* header */
	header {
		flex-direction: column;
		padding: 15px 0;
	}
	header div h1 {
		text-align: center;
	}
	header div img {
		width: 80%;
		margin: 0 auto;
		padding: 0 0 15px 0;
	}
	/* main visual */
	.main_visual {
		padding: 150px 0 50px 0;
	}
	.main_visual .img_01 {
		width: 200px;
		padding: 0 0 10px 0;
	}
	.main_visual .img_02 {
		width: 80%;
	}
	.main_visual h2 {
		font-size: 24px;
	}
	/* section one */
	.section_one ul {
		flex-direction: column;
	}
	.section_one ul li {
		width: 100%;
	}
	.section_one ul li img {
		width: 60%;
		height: auto;
	}
	.section_one ul li p {
		padding: 20px 0 30px 0;
	}
	.section_one p {
		font-size: 12px;
		padding: 0 0 0 0;
	}
	/* section two */
	.section_two {
		padding: 50px 20px;
	}
	.two_column {
		flex-direction: column;
	}
	.two_column .column_a {
		width: 100%;
		margin: 0;
		padding: 0 0 20px 0;
	}
	.two_column .column_b {
		width: 100%;
		margin: 0;
	}
	/* section three */
	.section_three div h3 {
		font-size: 24px;
	}
	.three_column {
		flex-direction: column;
		padding: 0 0 30px 0;
	}
	.three_column li {
		width: 100%;
		margin: 0 0 15px 0;
	}
	/* section four */
	.section_four {
		padding: 50px 20px;
	}
	.section_four h3 img {
		width: 80%;
	}
}