@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300&display=swap');
/* ================================================================================
CSS information
	file name	: layout.css
	style info	: 基本レイアウト設定
	author		: SAHO+DESIGN
	author URI	: https://saho-design.com
================================================================================ */
html{
	font-size: 62.5%;
}
img{
	max-width: 100%;
	height: auto;
}
body {
	font-family: 'Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.en {
  font-family:'Shippori Mincho', serif;
}
body{
	font-size: 1.6rem;
	font-feature-settings: "palt";
	letter-spacing: .1rem;
	line-height: 1.7;
	color: #2B2B2B;
  background: #fff;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	body{
    font-size: 1.7rem;
		line-height: 1.8;
	}
}

/* -- ul + ol -- */
ul, ol {
	margin: 0 0 1.42857em 1.42857em;
}
ul.ul-disc{
	list-style-type: disc;
}
ul.ul-num{
	list-style-type: decimal;
}
ul.ul-none{
	list-style-type: none;
}


.is-bgWhite {
	background: #fff;
}
.is-bgGray {
	background: #F7F6F5;
}
.is-bgGray2 {
	background: #E8ECEF;
}
.is-bgBlue {
	background: #EFF7FF;
}

.is-pCorp {
	color: #00AFCC;
}

/* リンク設定
----------------------------------------------------*/
a{
	transition: all .5s ease-in-out;
}
a[href^="tel:"]{
	cursor:default;
}
a:hover{
	opacity:0.7;
}
a.uline{
	text-decoration:underline;
}



/* =========================================   COLUMN   ========================================= */
.column {
	display: block;
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	-ms-flex-negative: 1;
	flex-shrink: 1;
	padding: 15px 15px;
}

.column.is-radius {
	border-radius: 8px;
}

.column.is-bottom {
	align-self: flex-end;
}

.columns.is-mobile > .column.is-full {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 100%;
}
.columns.is-mobile > .column.is-three-quarters {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 75%;
}
.columns.is-mobile > .column.is-two-thirds {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 66.6666%;
}
.columns.is-mobile > .column.is-half {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 50%;
}
.columns.is-mobile > .column.is-one-third {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 33.3333%;
}
.columns.is-mobile > .column.is-one-quarter {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 25%;
}
.columns.is-mobile > .column.is-offset-three-quarters {
	margin-left: 75%;
}
.columns.is-mobile > .column.is-offset-two-thirds {
	margin-left: 66.6666%;
}
.columns.is-mobile > .column.is-offset-half {
	margin-left: 50%;
}
.columns.is-mobile > .column.is-offset-one-third {
	margin-left: 33.3333%;
}
.columns.is-mobile > .column.is-offset-one-quarter {
	margin-left: 25%;
}
.columns.is-mobile > .column.is-1 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 10%;
}
.columns.is-mobile > .column.is-offset-1 {
	margin-left: 10%;
}
.columns.is-mobile > .column.is-2 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 20%;
}
.columns.is-mobile > .column.is-offset-2 {
	margin-left: 20%;
}
.columns.is-mobile > .column.is-3 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 30%;
}
.columns.is-mobile > .column.is-offset-3 {
	margin-left: 30%;
}
.columns.is-mobile > .column.is-4 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 30%;
}
.columns.is-mobile > .column.is-offset-4 {
	margin-left: 40%;
}
.columns.is-mobile > .column.is-5 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 50%;
}
.columns.is-mobile > .column.is-offset-5 {
	margin-left: 50%;
}
.columns.is-mobile > .column.is-6 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 60%;
}
.columns.is-mobile > .column.is-offset-6 {
	margin-left: 60%;
}
.columns.is-mobile > .column.is-7 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 70%;
}
.columns.is-mobile > .column.is-offset-7 {
	margin-left: 70%;
}
.columns.is-mobile > .column.is-8 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 80%;
}
.columns.is-mobile > .column.is-offset-8 {
	margin-left: 80%;
}
.columns.is-mobile > .column.is-9 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 90%;
}
.columns.is-mobile > .column.is-offset-9 {
	margin-left: 90%;
}
.columns.is-mobile > .column.is-10 {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
	width: 100%;
}
.columns.is-mobile > .column.is-offset-10 {
	margin-left: 100%;
}

@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.column{
		padding: 15px 15px 0;
	}
	.column.is-three-quarters{
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 75%;
  }
  .column.is-two-thirds {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 66.6666%;
  }
  .column.is-half {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 50%;
  }
  .column.is-one-third {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 33.3333%;
  }
  .column.is-one-quarter {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 25%;
  }
  .column.is-offset-three-quarters {
		margin-left: 75%;
  }
  .column.is-offset-two-thirds {
		margin-left: 66.6666%;
  }
  .column.is-offset-half {
		margin-left: 50%;
  }
  .column.is-offset-one-third {
		margin-left: 33.3333%;
  }
  .column.is-offset-one-quarter {
		margin-left: 25%;
  }
  .column.is-1 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 10%;
  }
  .column.is-offset-1 {
		margin-left: 10%;
  }
  .column.is-2 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 20%;
  }
  .column.is-offset-2 {
		margin-left: 20%;
  }
  .column.is-3 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 30%;
  }
  .column.is-offset-3 {
		margin-left: 30%;
  }
  .column.is-4 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 40%;
  }
  .column.is-offset-4 {
		margin-left: 40%;
  }
  .column.is-5 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 50%;
  }
  .column.is-offset-5 {
		margin-left: 50%;
  }
  .column.is-6 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 60%;
  }
  .column.is-offset-6 {
		margin-left: 60%;
  }
  .column.is-7 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 70%;
  }
  .column.is-offset-7 {
		margin-left: 70%;
  }
  .column.is-8 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 80%;
  }
  .column.is-offset-8 {
		margin-left: 80%;
  }
  .column.is-9 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 90%;
  }
  .column.is-offset-9 {
		margin-left: 90%;
  }
  .column.is-10 {
		-webkit-box-flex: 0;
		-ms-flex: none;
		flex: none;
		width: 100%;
  }
}

.columns {
	margin-left: -15px;
	margin-right: -15px;
	margin-top: -15px;
}
.columns:last-child {
	margin-bottom: -30px;
}
.columns:not(:last-child) {
	margin-bottom: 15px;
}
.columns.is-centered {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.columns.is-gapless {
	margin-left: 0;
	margin-right: 0;
	margin-top: 0;
	padding:0;
}
.columns.is-gapless:last-child {
	margin-bottom: 0;
}
.columns.is-gapless:not(:last-child) {
	margin-bottom: 15px;
}
.columns.is-gapless > .column {
	margin: 0;
	padding: 0;
}
.columns.is-mobile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.columns.is-multiline {
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
.columns.is-vcentered {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-ms-grid-row-align: center;
	align-items: center;
}

@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.columns {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin-left: -8px;
		margin-right: -8px;
	}
}



/* =========================================   CONTAINER & BOX   ========================================= */
.container, .container-gapless, .container790{
	position: relative;
	margin: 0 auto;
	padding: 50px 20px;
}
.container-gapless, .container790{
	padding-top:0;
	padding-bottom:0;
}
.container790{
	padding:0;
}
.space{padding-top:40px;}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.container, .container-gapless, .container790 {
		padding: 60px 20px;
	}
	.container-gapless{
		padding-top:0;
		padding-bottom:0;
	}
	.container790{
		padding:0;
	}
  .space{padding-top:50px;}
	.innerRs {padding-right:30px;}
	.innerLs {padding-left:30px;}
	.innerR {padding-right:60px;}
	.innerL {padding-left:60px;}
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	.container, .container-gapless, .container790{
		padding: 80px 10px;
		max-width: 1100px;
	}
	.container-gapless{
		padding-top:0;
		padding-bottom:0;
	}
	.container790{
		padding-top:0;
		padding-bottom:0;
		max-width: 810px;
	}
  .space{padding-top:80px;}
	.innerRs {padding-right:60px;}
	.innerLs {padding-left:60px;}
	.innerR {padding-right:120px;}
	.innerL {padding-left:120px;}
}

.logo {
	width:180px;
	margin:0;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.logo {
		width:280px;
  }
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	.logo {
		width:340px;
  }
}



/* =========================================   HEADER   ========================================= */
.header {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 53px;
}
.header > .container {
	display: flex;
	justify-content:space-between;
	max-width: 1700px;
	padding: 0 3%;
}
.gnav, .gsub {
	display: none;
}
.menuBtn {
	position: fixed;
	top: 10px;
	right: 15px;
	width: 40px;
	height: 40px;
	cursor: pointer;
	transition: all .5s ease-in-out;
	z-index: 999;
}
.menuBtn .menuBtn-burger {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 30px;
	height: 2px;
	background: #00AFCC;
	border-radius: 5px;
	transition: all .5s ease-in-out;
	z-index: 1000;
}
.menuBtn .menuBtn-burger::before,
.menuBtn .menuBtn-burger::after {
	content: '';
	position: absolute;
	width: 30px;
	height: 2px;
	background: #00AFCC;
	border-radius: 5px;
	transition: all .5s ease-in-out;
}
.menuBtn .menuBtn-burger::before {
	top: 10px;
}
.menuBtn .menuBtn-burger::after {
	top: -10px;
}
.menuBtn.open {
	border: 1px solid #00AFCC;
}
.menuBtn.open .menuBtn-burger {
	background: transparent;
}
.menuBtn.open .menuBtn-burger::before {
	top: 0;
	transform: rotate(45deg);
}
.menuBtn.open .menuBtn-burger::after {
	top: 0;
	transform: rotate(135deg);
}
.snav{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
	background-color: #fff;
	transform: translateX(100%);
	transition: all .5s ease-in-out;
	z-index: 998;
}
.snav.active{
	transform: translateX(0);
}
.snav ul.snavMenu {
	position: relative;
}
.snav ul.snavMenu li{
	font-size: 1.7rem;
	padding: 0;
	text-align: center;
}
.snav ul.snavMenu li a{
	position: relative;
	display: block;
	text-decoration: none;
	padding:3px 0;
	transition: all .5s ease-in-out;
}
.snav ul.snavMenu li:first-child a{
	padding-bottom: 3rem;
}
.snav ul.snavMenu li:first-child img{
	width:80%;
}
.snav ul.snavSNS {
	display: block;
	justify-content: center;
	align-items: center;
	margin-top: 10px;
}
.snav ul.snavSNS li{
	font-size: 1.7rem;
	padding-bottom:10px;
}

.mask{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(56, 54, 54, 0.5);
	visibility: hidden;
	opacity: 0;
	transition: all .5s ease-in-out;
	z-index: 997;
}
.mask.active{
	opacity: 1;
	visibility: visible;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.header {
		height:82px;
	}
	.snav {
		width: 70%;
	}
	.menuBtn {
		top: 25px;
		right: 20px;
	}
}
@media screen and (min-width: 1025px) {  /* ---------------   gnavが消えないレベル   --------------- */
	.header {
		height:115px;
	}
  .gsub {
		display: flex;
		justify-content: flex-end;
		flex-wrap: wrap;
		padding-top:20px;
  }
  .gnav {
    display: block;
		margin-top:10px;
    margin-left: auto;
  }
  .gnav ul.gnavMenu{
    display: flex;
    align-items: flex-end;
		font-weight:600;
		letter-spacing: 0;
  }
  .gnav ul.gnavMenu > li + li {
    margin-left: 25px;
  }
  .menuBtn, .snav {
    display: none;
  }
}



/* =========================================   FOOTER   ========================================= */
footer.container{
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
}

footer .fnav{
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}
footer .fnav > li{
	position: relative;
	font-size:.8em;
	width: 50%;
	margin: 0;
	padding: 5px 10px;
	text-align: left;
}
footer .fnav > li::before{
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 0;
	height: 20px;
	margin: auto;
	border-left: 1px solid #333;
}
footer .fsub{
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0 0;
}
footer .fsub > li{
	position: relative;
	font-size:80%;
	width: 100%;
	margin: 0;
	padding: 3px 10px 3px 0;
	text-align: left;
}
footer .logo {
	width:50%;
	margin:20px 20px 0;
	text-align:left;
}
footer .copyright {
  font-size: .8em;
	padding-left:20px;
	text-align:left;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
  footer.container{
    text-align: left;
  }
	footer .fnav{
		flex-wrap: nowrap;
	}
	footer .fnav > li{
		padding: 3px 10px;
		text-align: center;
	}
	footer .fnav > li::before{
		border-right: 1px solid #333;
		border-left: none;
	}
	footer .fnav > li:first-of-type::before{
		content: none;
	}
	footer .fsub{
		flex-wrap: nowrap;
		justify-content: center;
		width:90%;
		margin:0 auto;
	}
	footer .fsub > li{
		text-align: center;
	}
	footer .logo {
		width:30%;
		margin:20px auto 0;
		text-align:center;
	}
	footer .copyright {
		text-align:center;
		padding:0;
	}
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	footer .fsub{
		width:80%;
	}
	footer .logo {
		width:20%;
	}
}



/* =========================================   TITLE & SUBTITLE   ========================================= */
.topImg {
  position: relative;
  top: 20px;
  left: 0;
  width: 100%;
  height: calc(100vw * .56);
	background-size: cover;
	border-radius: 40px 40px 0 0;
  z-index: -1;
}
.sloganTitle{
	position:absolute;
	left:50%;
	bottom:-20px;
	width:250px;
	height:auto;
	transform:translate(-50%,0);
	line-height:1;
	opacity:1;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)"
}
.sloganTitle img{
	max-width:100%;
	height:auto;
}
h1 {
  color: #fff;
}
h2 {
  font-size: 2.2rem;
	line-height: 1.3;
  font-weight: 600;
	padding-bottom: 20px;
	text-align: center;
}
h3 {
  font-size: 1.7rem;
	line-height: 1.25em;	
	margin: 2em 0 1.25em;
	padding-bottom: .312502em;
	border-bottom: 3px solid #eee;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
  .topImg {
	  top: 0;
		height:350px;
		background-size: contain;
		border-radius: 60px 60px 0 0;
  }
	.sloganTitle{bottom:-40px; width:350px;	transform:translate(-50%,-50%);}
	h2{
    font-size: 2.6rem;
		padding-bottom: 30px;
  }
	h3{
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
  .topImg {
    height: 480px;
		border-radius: 80px 80px 0 0;
  }
	.sloganTitle{bottom:-46px; width:450px;}
	h2{
    font-size: 3.0rem;
		padding-bottom: 50px;
  }
	h3{
    font-size: 2.0rem;
  }
}



/* =========================================   BUTTON   ========================================= */
.btn {
  position: relative;
  display: inline-block;
  cursor: pointer;
  user-select: none;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  color: #00AFCC;
	font-weight:600;
	width:90%;
	margin: 3rem 0;
  padding: 1.5rem 0;
	background: #fff;
	border: 2px solid #00AFCC;
  border-radius: 4rem;
}
.btn:hover {
	color: #fff;
	background: #00AFCC;
	border: 2px solid #00AFCC;
	opacity: 1;
}
.btn:hover span {
  display: inline-block;
}

.btn.order {
  color: #fff;
	font-size:90%;
	font-weight:400;
  width: 150px;
	margin: 0;
	margin-left: 1rem;
  padding: .1rem .5rem;
	background-color: #00AFCC;
}
.btn.order:hover {
	color: #00AFCC;
	background: #fff;
	border: 2px solid #00AFCC;
	opacity: 1;
}
.arrowRight::after {
  position: absolute;
  right: 2rem;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f138";
}
.email::after {
  position: absolute;
  right: 1rem;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f0e0";
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.btn {
		width:80%;
	}
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	.btn {
		width:750px;
	}
	.btn.order {
		margin-right:2rem;
	}
}

/* =========================================   PAGE TOP   ========================================= */
.btn.pageTop {
  position: fixed;
  right: 1.5rem;
  bottom: 1.5rem;
  display: block;
  width: 4rem;
  height: 4rem;
  font-size: 2rem;
  line-height: 0;
  padding: 1rem 1rem;
  z-index: 1000;
}



/* =========================================   TABLE   ========================================= */
table {
	width: 100%;
	margin-bottom: .714286em;
	border-collapse: collapse;
	border-top: 1px solid #ccc;
}
th {
	white-space: nowrap;
	padding: .714286em;
	background-color: #f7f6f5;
	border-bottom: 1px solid #ccc;
}
td {
	padding: .714286em;
	border-bottom: 1px solid #ccc;
}




/* =========================================   VIDEO SETTING   ========================================= */
.iframeBox {
	position: relative;
	margin:20px 0;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.iframeBox iframe {
	position: absolute;
  top: 0;
  left: 50%;
	transform: translateY(0) translateX(-50%);
	width:790px;
  height: 100%;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.iframeBox {
	  padding-bottom: 51.25%;
	}
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	.iframeBox {
	  padding-bottom: 46.25%;
	}
}

.iframeBox2 {
	position: relative;
	margin:20px 0;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.iframeBox2 iframe {
	position: absolute;
  top: 0;
  left: 50%;
	transform: translateY(0) translateX(-50%);
	width:640px;
  height: 100%;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.iframeBox2 {
	  padding-bottom: 51.25%;
	}
}
@media screen and (min-width: 1025px) {  /* ---------------   PC   --------------- */
	.iframeBox2 {
	  padding-bottom: 46.25%;
	}
}



/* =========================================   OTHER SETTING   ========================================= */
/* テキストの設定
----------------------------------------------------*/
.is-center {
	text-align: center;
}
.is-left {
	text-align: left;
}
.is-right {
	text-align: right;
}
.strong {
  font-weight: bold;
}
.noStrong {
  font-weight: normal;
}
.xsmall {
	font-size: 60%;
}
.small {
	font-size: 80%;
}
.large {
	font-size: 110%;
}
.xlarge {
	font-size: 120%;
}
.is-center_sp {
	text-align: center;
}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.is-center_sp {
		text-align: left;
	}
	.is-center_pc {
		text-align: center;
	}
	.is-left_pc {
		text-align: left;
	}
	.is-right_pc {
		text-align: right;
	}
	.br_sp {
		display:block;
	}
	.br_pc {
		display:none;
	}
	.large {
		font-size: 120%;
	}
	.xlarge {
		font-size: 160%;
	}
}


/* マージンの設定
----------------------------------------------------*/
.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;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt40 { margin-top:40px !important;}
.mt50 { margin-top:50px !important;}
.mb0 { margin-bottom:0px !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;}
.mb40 { margin-bottom:40px !important;}
.mb50 { margin-bottom:50px !important;}
.mb60 { margin-bottom:60px !important;}
.mb70 { margin-bottom:70px !important;}
.mb80 { margin-bottom:80px !important;}
.mb90 { margin-bottom:90px !important;}
.mb100 { margin-bottom:100px !important;}
.ml0 { margin-left:0px !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;}
.ml40 { margin-left:40px !important;}
.ml50 { margin-left:50px !important;}
.ml60 { margin-left:60px !important;}
.ml70 { margin-left:70px !important;}
.ml80 { margin-left:80px !important;}
.ml90 { margin-left:90px !important;}
.ml100 { margin-left:100px !important;}
.mr0 { margin-right:0px !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;}
.mr40 { margin-right:40px !important;}
.mr50 { margin-right:50px !important;}
.mr60 { margin-right:60px !important;}
.mr70 { margin-right:70px !important;}
.mr80 { margin-right:80px !important;}
.mr90 { margin-right:90px !important;}
.mr100 { margin-right:100px !important;}

/* パディングの設定
----------------------------------------------------*/
.pt0 { padding-top:0px !important;}
.pt5 { 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;}
.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;}
.pt100 { padding-top:100px !important;}
.pb0 { padding-bottom:0px !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;}
.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;}
.pb100 { padding-bottom:100px !important;}
.pl0 { padding-left:0px !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;}
.pl40 { padding-left:40px !important;}
.pl50 { padding-left:50px !important;}
.pl60 { padding-left:60px !important;}
.pl70 { padding-left:70px !important;}
.pl80 { padding-left:80px !important;}
.pl90 { padding-left:90px !important;}
.pl100 { padding-left:100px !important;}
.pr0 { padding-right:0px !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;}
.pr40 { padding-right:40px !important;}
.pr50 { padding-right:50px !important;}
.pr60 { padding-right:60px !important;}
.pr70 { padding-right:70px !important;}
.pr80 { padding-right:80px !important;}
.pr90 { padding-right:90px !important;}
.pr100 { padding-right:100px !important;}

/*----- pc -----*/
.pt10_pc { padding-top:0;}
.pt15_pc { padding-top:0;}
.pt20_pc { padding-top:0;}
.pt25_pc { padding-top:0;}
.pt30_pc { padding-top:0;}
.pt35_pc { padding-top:0;}
.pt40_pc { padding-top:0;}
.pt45_pc { padding-top:0;}
.pt50_pc { padding-top:0;}
.pt60_pc { padding-top:0;}
.pt70_pc { padding-top:0;}
.pt80_pc { padding-top:0;}
.pt90_pc { padding-top:0;}
.pt100_pc { padding-top:0;}
.pb10_pc { padding-bottom:0;}
.pb15_pc { padding-bottom:0;}
.pb20_pc { padding-bottom:0;}
.pb25_pc { padding-bottom:0;}
.pb30_pc { padding-bottom:0;}
.pb35_pc { padding-bottom:0;}
.pb40_pc { padding-bottom:0;}
.pb50_pc { padding-bottom:0;}
.pb60_pc { padding-bottom:0;}
.pb70_pc { padding-bottom:0;}
.pb80_pc { padding-bottom:0;}
.pb90_pc { padding-bottom:0;}
.pb100_pc { padding-bottom:0;}
.pl10_pc { padding-left:0;}
.pl15_pc { padding-left:0;}
.pl20_pc { padding-left:0;}
.pl25_pc { padding-left:0;}
.pl30_pc { padding-left:0;}
.pl40_pc { padding-left:0;}
.pl50_pc { padding-left:0;}
.pl60_pc { padding-left:0;}
.pl70_pc { padding-left:0;}
.pl80_pc { padding-left:0;}
.pl90_pc { padding-left:0;}
.pl100_pc { padding-left:0;}
.pr10_pc { padding-right:0;}
.pr15_pc { padding-right:0;}
.pr20_pc { padding-right:0;}
.pr25_pc { padding-right:0;}
.pr30_pc { padding-right:0;}
.pr40_pc { padding-right:0;}
.pr50_pc { padding-right:0;}
.pr60_pc { padding-right:0;}
.pr70_pc { padding-right:0;}
.pr80_pc { padding-right:0;}
.pr90_pc { padding-right:0;}
.pr100_pc { padding-right:0;}
.plStep { padding-left:10px;}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.pt10_pc { padding-top:10px;}
	.pt15_pc { padding-top:15px;}
	.pt20_pc { padding-top:20px;}
	.pt25_pc { padding-top:25px;}
	.pt30_pc { padding-top:30px;}
	.pt35_pc { padding-top:35px;}
	.pt40_pc { padding-top:40px;}
	.pt45_pc { padding-top:45px;}
	.pt50_pc { padding-top:50px;}
	.pt60_pc { padding-top:60px;}
	.pt70_pc { padding-top:70px;}
	.pt80_pc { padding-top:80px;}
	.pt90_pc { padding-top:90px;}
	.pt100_pc { padding-top:100px;}
	.pb10_pc { padding-bottom:10px;}
	.pb15_pc { padding-bottom:15px;}
	.pb20_pc { padding-bottom:20px;}
	.pb25_pc { padding-bottom:25px;}
	.pb30_pc { padding-bottom:30px;}
	.pb35_pc { padding-bottom:35px;}
	.pb40_pc { padding-bottom:40px;}
	.pb50_pc { padding-bottom:50px;}
	.pb60_pc { padding-bottom:60px;}
	.pb70_pc { padding-bottom:70px;}
	.pb80_pc { padding-bottom:80px;}
	.pb90_pc { padding-bottom:90px;}
	.pb100_pc { padding-bottom:100px;}
	.pl10_pc { padding-left:10px;}
	.pl15_pc { padding-left:15px;}
	.pl20_pc { padding-left:20px;}
	.pl25_pc { padding-left:25px;}
	.pl30_pc { padding-left:30px;}
	.pl40_pc { padding-left:40px;}
	.pl50_pc { padding-left:50px;}
	.pl60_pc { padding-left:60px;}
	.pl70_pc { padding-left:70px;}
	.pl80_pc { padding-left:80px;}
	.pl90_pc { padding-left:90px;}
	.pl100_pc { padding-left:100px;}
	.pr10_pc { padding-right:10px;}
	.pr15_pc { padding-right:15px;}
	.pr20_pc { padding-right:20px;}
	.pr25_pc { padding-right:25px;}
	.pr30_pc { padding-right:30px;}
	.pr40_pc { padding-right:40px;}
	.pr50_pc { padding-right:50px;}
	.pr60_pc { padding-right:60px;}
	.pr70_pc { padding-right:70px;}
	.pr80_pc { padding-right:80px;}
	.pr90_pc { padding-right:90px;}
	.pr100_pc { padding-right:100px;}
	.plStep { padding-left:20px;}
}
/*----- sp -----*/
.pt0_sp { padding-top:0;}
.pt10_sp { padding-top:10px;}
.pt15_sp { padding-top:15px;}
.pt20_sp { padding-top:20px;}
.pt25_sp { padding-top:25px;}
.pt30_sp { padding-top:30px;}
.pt40_sp { padding-top:40px;}
.pt50_sp { padding-top:50px;}
.pt60_sp { padding-top:60px;}
.pt70_sp { padding-top:70px;}
.pt80_sp { padding-top:80px;}
.pt90_sp { padding-top:90px;}
.pt100_sp { padding-top:100px;}
.pb0_sp { padding-bottom:0;}
.pb10_sp { padding-bottom:10px;}
.pb15_sp { padding-bottom:15px;}
.pb20_sp { padding-bottom:20px;}
.pb25_sp { padding-bottom:25px;}
.pb30_sp { padding-bottom:30px;}
.pb40_sp { padding-bottom:40px;}
.pb50_sp { padding-bottom:50px;}
.pb60_sp { padding-bottom:60px;}
.pb70_sp { padding-bottom:70px;}
.pb80_sp { padding-bottom:80px;}
.pb90_sp { padding-bottom:90px;}
.pb100_sp { padding-bottom:100px;}
.pl10_sp { padding-left:10px;}
.pl15_sp { padding-left:15px;}
.pl20_sp { padding-left:20px;}
.pl25_sp { padding-left:25px;}
.pl30_sp { padding-left:30px;}
.pl40_sp { padding-left:40px;}
.pl50_sp { padding-left:50px;}
.pl60_sp { padding-left:60px;}
.pl70_sp { padding-left:70px;}
.pl80_sp { padding-left:80px;}
.pl90_sp { padding-left:90px;}
.pl100_sp { padding-left:100px;}
.pr10_sp { padding-right:10px;}
.pr15_sp { padding-right:15px;}
.pr20_sp { padding-right:20px;}
.pr25_sp { padding-right:25px;}
.pr30_sp { padding-right:30px;}
.pr40_sp { padding-right:40px;}
.pr50_sp { padding-right:50px;}
.pr60_sp { padding-right:60px;}
.pr70_sp { padding-right:70px;}
.pr80_sp { padding-right:80px;}
.pr90_sp { padding-right:90px;}
.pr100_sp { padding-right:100px;}
@media screen and (min-width: 600px) { /* ---------------   タブレット   --------------- */
	.pt10_sp { padding-top:0;}
	.pt15_sp { padding-top:0;}
	.pt20_sp { padding-top:0;}
	.pt25_sp { padding-top:0;}
	.pt30_sp { padding-top:0;}
	.pt40_sp { padding-top:0;}
	.pt50_sp { padding-top:0;}
	.pt60_sp { padding-top:0;}
	.pt70_sp { padding-top:0;}
	.pt80_sp { padding-top:0;}
	.pt90_sp { padding-top:0;}
	.pt100_sp { padding-top:0;}
	.pb10_sp { padding-bottom:0;}
	.pb15_sp { padding-bottom:0;}
	.pb20_sp { padding-bottom:0;}
	.pb25_sp { padding-bottom:0;}
	.pb30_sp { padding-bottom:0;}
	.pb40_sp { padding-bottom:0;}
	.pb50_sp { padding-bottom:0;}
	.pb60_sp { padding-bottom:0;}
	.pb70_sp { padding-bottom:0;}
	.pb80_sp { padding-bottom:0;}
	.pb90_sp { padding-bottom:0;}
	.pb100_sp { padding-bottom:0;}
	.pl10_sp { padding-left:0;}
	.pl15_sp { padding-left:0;}
	.pl20_sp { padding-left:0;}
	.pl25_sp { padding-left:0;}
	.pl30_sp { padding-left:0;}
	.pl40_sp { padding-left:0;}
	.pl50_sp { padding-left:0;}
	.pl60_sp { padding-left:0;}
	.pl70_sp { padding-left:0;}
	.pl80_sp { padding-left:0;}
	.pl90_sp { padding-left:0;}
	.pl100_sp { padding-left:0;}
	.pr10_sp { padding-right:0;}
	.pr15_sp { padding-right:0;}
	.pr20_sp { padding-right:0;}
	.pr25_sp { padding-right:0;}
	.pr30_sp { padding-right:0;}
	.pr40_sp { padding-right:0;}
	.pr50_sp { padding-right:0;}
	.pr60_sp { padding-right:0;}
	.pr70_sp { padding-right:0;}
	.pr80_sp { padding-right:0;}
	.pr90_sp { padding-right:0;}
	.pr100_sp { padding-right:0;}
}

/* その他設定
----------------------------------------------------*/
hr {
	background-color: #E8ECEF;
	border: none;
	display: block;
	height: 1px;
	margin: 0;
	padding: 0;
}
.indent {
	padding-left: 1.6rem;
	text-indent: -1.5rem;
}

.br_sp {
	display:none;
}
@media screen and (max-width: 601px) {/* ---------------   タブレット   --------------- */
	.br_sp {
		display:block;
	}
	.br_pc {
		display:none;
	}
}
.visible_sp {
	display: none;
}
.visible_pc {
	display: block;
}
@media screen and (max-width: 601px) {/* ---------------   タブレット   --------------- */
	.visible_sp {
		display:block;
	}
	.visible_pc {
		display: none;
	}
}
