html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	border: 0;
	outline: 0;
	vertical-align: baseline;
	margin: 0;
	padding: 0;
	font: 62.5%
}

img {
	vertical-align: bottom;
	width: 100%
}

html {
	font-size: 62.5%;
	line-height: 1.8
}

body {
	*font-size: small;
	*font: x-small;
	-webkit-text-size-adjust: none
}

body,
textarea {
	font-family: inherit;
	font-size: 100%
}

input,
select {
	font-family: inherit;
	font-size: 100%
}

select,
input,
button,
textarea {
	font: 99% sans-serif
}

pre,
code,
kbd,
samp,
tt {
	*font-size: 108%;
	line-height: 100%
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: inherit;
	font: 100%
}

article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	display: block
}

ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

:focus {
	outline: 0
}

ins {
	text-decoration: none
}

del {
	text-decoration: line-through
}

em {
	font-style: normal
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0
}

figure {
	display: block;
	margin: 0;
	padding: 0
}

svg {
	line-height: 0
}

.hover,
.btn-inner:hover,
.btn-inner:focus,
.hover:hover,
.hover:focus,
.gnav-item-inner:hover,
.gnav-item-inner:focus {
	transition: all 0.1s linear
}

@font-face {
	font-family: 'din';
	src: url("/assets/fonts/dinbold.woff2") format("woff2"), url("/assets/fonts/dinbold.woff") format("woff"), url("/assets/fonts/dinbold.ttf") format("truetype"), url("/assets/fonts/dinbold.svg#dinbold") format("svg");
	font-weight: normal;
	font-style: normal
}

@font-face {
	font-family: 'biko_b';
	src: url("/assets/fonts/biko_bold-webfont.eot");
	src: url("/assets/fonts/biko_bold-webfont.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/biko_bold-webfont.woff2") format("woff2"), url("/assets/fonts/biko_bold-webfont.woff") format("woff"), url("/assets/fonts/biko_bold-webfont.ttf") format("truetype"), url("/assets/fonts/biko_bold-webfont.svg#bikobold") format("svg");
	font-weight: normal;
	font-style: normal
}

@font-face {
	font-family: 'biko_r';
	src: url("/assets/fonts/biko_regular-webfont.eot");
	src: url("/assets/fonts/biko_regular-webfont.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/biko_regular-webfont.woff2") format("woff2"), url("/assets/fonts/biko_regular-webfont.woff") format("woff"), url("/assets/fonts/biko_regular-webfont.ttf") format("truetype"), url("/assets/fonts/biko_regular-webfont.svg#bikoregular") format("svg");
	font-weight: normal;
	font-style: normal
}

body,
textarea {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Lucida Grande", "segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Verdana", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

#defs {
	display: none
}

.hover,
.btn-inner:hover,
.btn-inner:focus {
	filter: alpha(opacity=100);
	opacity: 1
}

.hover:hover,
.hover:focus,
.btn-inner:hover,
.btn-inner:focus {
	filter: alpha(opacity=70);
	opacity: 0.7
}

.m-0 {
	margin: 0px
}

.mt-0 {
	margin-top: 0px
}

.mb-0 {
	margin-bottom: 0px
}

.ml-0 {
	margin-left: 0px
}

.mr-0 {
	margin-right: 0px
}

.p-0 {
	padding: 0px
}

.pt-0 {
	padding-top: 0px
}

.pb-0 {
	padding-bottom: 0px
}

.pl-0 {
	padding-left: 0px
}

.pr-0 {
	padding-right: 0px
}

.m-5 {
	margin: 5px
}

.mt-5 {
	margin-top: 5px
}

.mb-5 {
	margin-bottom: 5px
}

.ml-5 {
	margin-left: 5px
}

.mr-5 {
	margin-right: 5px
}

.p-5 {
	padding: 5px
}

.pt-5 {
	padding-top: 5px
}

.pb-5 {
	padding-bottom: 5px
}

.pl-5 {
	padding-left: 5px
}

.pr-5 {
	padding-right: 5px
}

.m-10 {
	margin: 10px
}

.mt-10 {
	margin-top: 10px
}

.mb-10 {
	margin-bottom: 10px
}

.ml-10 {
	margin-left: 10px
}

.mr-10 {
	margin-right: 10px
}

.p-10 {
	padding: 10px
}

.pt-10 {
	padding-top: 10px
}

.pb-10 {
	padding-bottom: 10px
}

.pl-10 {
	padding-left: 10px
}

.pr-10 {
	padding-right: 10px
}

.m-15 {
	margin: 15px
}

.mt-15 {
	margin-top: 15px
}

.mb-15 {
	margin-bottom: 15px
}

.ml-15 {
	margin-left: 15px
}

.mr-15 {
	margin-right: 15px
}

.p-15 {
	padding: 15px
}

.pt-15 {
	padding-top: 15px
}

.pb-15 {
	padding-bottom: 15px
}

.pl-15 {
	padding-left: 15px
}

.pr-15 {
	padding-right: 15px
}

.m-20 {
	margin: 20px
}

.mt-20 {
	margin-top: 20px
}

.mb-20 {
	margin-bottom: 20px
}

.ml-20 {
	margin-left: 20px
}

.mr-20 {
	margin-right: 20px
}

.p-20 {
	padding: 20px
}

.pt-20 {
	padding-top: 20px
}

.pb-20 {
	padding-bottom: 20px
}

.pl-20 {
	padding-left: 20px
}

.pr-20 {
	padding-right: 20px
}

.m-25 {
	margin: 25px
}

.mt-25 {
	margin-top: 25px
}

.mb-25 {
	margin-bottom: 25px
}

.ml-25 {
	margin-left: 25px
}

.mr-25 {
	margin-right: 25px
}

.p-25 {
	padding: 25px
}

.pt-25 {
	padding-top: 25px
}

.pb-25 {
	padding-bottom: 25px
}

.pl-25 {
	padding-left: 25px
}

.pr-25 {
	padding-right: 25px
}

.m-30 {
	margin: 30px
}

.mt-30 {
	margin-top: 30px
}

.mb-30 {
	margin-bottom: 30px
}

.ml-30 {
	margin-left: 30px
}

.mr-30 {
	margin-right: 30px
}

.p-30 {
	padding: 30px
}

.pt-30 {
	padding-top: 30px
}

.pb-30 {
	padding-bottom: 30px
}

.pl-30 {
	padding-left: 30px
}

.pr-30 {
	padding-right: 30px
}

.m-auto {
	margin-left: auto;
	margin-right: auto
}

.spacer-15 {
	margin-bottom: 15px
}

@media all and (min-width: 800px) {
	.spacer-15 {
		margin-bottom: 30px
	}
}

.spacer-30 {
	margin-bottom: 30px
}

@media all and (min-width: 800px) {
	.spacer-30 {
		margin-bottom: 45px
	}
}

.spacer-45 {
	margin-bottom: 45px
}

@media all and (min-width: 800px) {
	.spacer-45 {
		margin-bottom: 60px
	}
}

.spacer-60 {
	margin-bottom: 60px
}

@media all and (min-width: 800px) {
	.spacer-60 {
		margin-bottom: 75px
	}
}

.spacer-75 {
	margin-bottom: 75px
}

@media all and (min-width: 800px) {
	.spacer-75 {
		margin-bottom: 90px
	}
}

.spacer-3060 {
	margin-bottom: 30px
}

@media all and (min-width: 800px) {
	.spacer-3060 {
		margin-bottom: 60px
	}
}

.anchor {
	clear: both;
	position: relative;
	top: -60px;
	display: block
}

@media (min-width: 800px) {
	.anchor {
		top: -90px
	}
}

.external_link_icon {
	fill: effect01(1);
	width: 14px;
	height: 14px;
	padding: 0 5px
}

.bg-wh {
	background-color: #ffffff
}

.scroll {
	overflow: auto;
	white-space: normal
}

@media all and (min-width: 800px) {
	.scroll {
		white-space: nowrap
	}
}

.scroll::-webkit-scrollbar {
	height: 10px
}

.scroll::-webkit-scrollbar-track {
	background: #f1f1f1
}

.scroll::-webkit-scrollbar-thumb {
	background: #bcbcbc
}

.pos-left {
	margin-right: auto
}

.pos-center {
	margin: 0 auto
}

.pos-right {
	margin-left: auto
}

.pos-bottom {
	margin-top: auto;
	margin-bottom: 0
}

.txt-left {
	text-align: left
}

.txt-center {
	text-align: center
}

.txt-right {
	text-align: right
}

@media all and (min-width: 800px) {
	.break:after {
		content: "\a";
		white-space: pre
	}
	.break-line-1 {
		display: block;
		height: 30px;
		max-height: 30px
	}
}

@media all and (max-width: 799px) {
	.breaksp:after {
		content: "\a";
		white-space: pre
	}
}

.indent-p {
	margin-left: 1em;
	text-indent: 1em
}

.indent-m {
	margin-left: 1em;
	text-indent: -1em
}

.disp-pcsp {
	display: none
}

@media all and (min-width: 480px) {
	.disp-pcsp {
		display: block
	}
}

.disp-pcsp-inline {
	display: none
}

@media all and (min-width: 480px) {
	.disp-pcsp-inline {
		display: inline
	}
}

.disp-sp {
	display: block
}

@media all and (min-width: 480px) {
	.disp-sp {
		display: none
	}
}

.disp-sp-inline {
	display: inline
}

@media all and (min-width: 480px) {
	.disp-sp-inline {
		display: none
	}
}

.disp-pctb {
	display: none
}

@media all and (min-width: 800px) {
	.disp-pctb {
		display: block
	}
}

.disp-pctb-inline {
	display: none
}

@media all and (min-width: 800px) {
	.disp-pctb-inline {
		display: inline
	}
}

.disp-tb {
	display: block
}

@media all and (min-width: 800px) {
	.disp-tb {
		display: none
	}
}

.disp-tb-inline {
	display: inline
}

@media all and (min-width: 800px) {
	.disp-tb-inline {
		display: none
	}
}

body {
	color: #444;
	background: #f3f3f3;
	width: 100%;
	font-size: 1.5rem;
	line-height: 1.8
}

a {
	color: rgba(68, 68, 68, 0.8);
	text-decoration: none
}

::-moz-selection,
::-moz-selection {
	background: #928244
}

::selection,
::-moz-selection {
	background: #928244
}

#map-area {
	height: 250px
}

.index {
	background-image: url("../images/index/hero/main_bg_sp.png");
	background-position: left top;
	background-size: contain;
	background-repeat: no-repeat;
	overflow: hidden
}

@media all and (min-width: 380px) {
	.index {
		background-position: left -15px
	}
}

@media all and (min-width: 420px) {
	.index {
		background-position: left -20px
	}
}

@media all and (min-width: 460px) {
	.index {
		background-position: left -25px
	}
}

@media all and (min-width: 480px) {
	.index {
		background-position: left top;
		background-image: url("../images/index/hero/main_bg.png")
	}
}

.section {
	position: relative;
	width: 100%;
	padding: 30px 0;
	background: base01(1)
}

@media all and (min-width: 800px) {
	.section {
		padding: 60px 0
	}
}

.section-pad0 {
	padding: 0
}

.section-inner {
	position: relative
}

.section-head {
	position: relative;
	overflow: visible;
	background-image: url("../images/index/sec_bg_head.png");
	background-position: left top;
	background-size: 100% 100%;
	background-repeat: no-repeat
}

.section-head h2 {
	padding: 140px 15px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.section-head h2 {
		padding: 140px 0
	}
}

.section-head-1 h2 {
	position: relative;
	top: 15px
}

.section-head-2 {
	background-position: left 100px
}

.section-head-2 h2 {
	position: relative;
	top: 45px
}

.section-head-3 {
	background-position: left 140px
}

.section-head-4 {
	background-position: left 150px
}

.section-head-5 {
	background-position: left 70px
}

@media all and (min-width: 800px) {
	.section-head-5 {
		background-position: left 100px
	}
}

.section-head-5 h2 {
	position: relative;
	top: -80px
}

.section-head-6 {
	background-position: left 140px
}

.section-head-7 {
	background-image: none
}

.section-head-8 {
	background-position: left 140px
}

.section-head-form {
	background-image: none
}

.section-head-form h2 {
	position: relative;
	top: -80px
}

.section-content {
	width: 90%;
	margin: 0 auto;
	position: relative;
	overflow: hidden
}

@media all and (min-width: 1120px) {
	.section-content {
		width: 1000px
	}
}

.sec-bg-wh,
.sec-bg-gy {
	position: relative
}

.sec-bg-wh:before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 300%;
	height: 101%;
	background-color: #fff;
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-8deg);
	transform: rotate(-8deg);
	z-index: -1
}

.fbox {
	display: flex;
	flex-grow: 1;
	justify-content: space-between;
	flex-basis: auto;
	flex-wrap: wrap;
	align-items: stretch;
	text-align: center
}

.fbox .col2 {
	flex-direction: column;
	width: 100%
}

.fbox .col4 {
	flex-direction: column;
	width: 100%
}

.fbox .col-txt {
	flex-direction: column;
	width: 100%;
	text-align: left;
	font-size: 1.6rem;
	line-height: 2.1
}

.fbox .col-img {
	flex-direction: column;
	width: 100%
}

@media all and (min-width: 480px) {
	.fbox .col3 {
		flex-direction: column;
		width: 100%
	}
	.fbox .col4 {
		width: 50%
	}
}

@media all and (min-width: 800px) {
	.fbox .col2 {
		flex-direction: row;
		width: 50%;
		box-sizing: border-box
	}
	.fbox .col3 {
		width: 50%;
		box-sizing: border-box
	}
	.fbox .col4 {
		width: 25%;
		box-sizing: border-box
	}
}

@media all and (min-width: 1080px) {
	.fbox .col3 {
		width: 33.3%;
		box-sizing: border-box
	}
}

.fbox-rev {
	flex-direction: row-reverse
}

.fbox-1row {
	display: flex;
	flex-grow: 1;
	justify-content: space-between;
	flex-basis: auto;
	flex-wrap: nowrap;
	align-items: stretch
}

.fbox-1row-center {
	justify-content: center;
	align-items: center
}

.wide-txt p {
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 2rem;
	text-align: center
}

@media all and (min-width: 800px) {
	.wide-txt p {
		font-size: 3.2rem
	}
}

.sec01 {
	position: relative;
	top: -90px;
	margin-bottom: -90px
}

@media all and (min-width: 800px) {
	.sec01 {
		top: 0;
		margin-bottom: 0
	}
}

.sec01 .section-content-mtminus {
	top: -130px
}

.sec01 .section-content {
	overflow: visible
}

.sec01 .section-content .circle-boxes {
	position: relative
}

.sec01 .section-content .circle-boxes .f-line {
	position: relative;
	z-index: 10;
	justify-content: center;
	flex-wrap: nowrap
}

.sec01 .section-content .circle-boxes .s-line {
	position: relative;
	margin-top: -10%;
	z-index: 5;
	flex-wrap: nowrap
}

.sec01 .section-content .circle-boxes .circle {
	max-width: 30.4%;
	position: relative
}

.sec01 .section-content .circle-boxes .circle img {
	max-width: 100%
}

.sec01 .section-content .circle-boxes .c1,
.sec01 .section-content .circle-boxes .c2 {
	left: -2.2%;
	padding: 0 12px
}

.sec01 .section-content .circle-boxes .c4 {
	left: -2.2%
}

.sec01 .section-content .circle-boxes .c5 {
	bottom: -20px;
	right: -4%
}

@media all and (min-width: 1010px) {
	.sec01 .section-content .circle-boxes .c5 {
		right: -50px
	}
}

.sec01 .section-content .wide-txt {
	margin-top: 0
}

@media all and (min-width: 800px) {
	.sec01 .section-content .wide-txt {
		margin-top: 90px
	}
}

.sec01 .section-content .more-box {
	position: relative
}

.sec01 .section-content .more-box .more-ttl {
	margin-top: 30px;
	font-size: 1.9rem;
	font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
	font-style: normal;
	font-weight: 600;
	color: #351f1f;
	text-align: center;
	line-hight: 1.5
}

@media all and (min-width: 800px) {
	.sec01 .section-content .more-box .more-ttl {
		margin-top: 90px;
		font-size: 3.2rem
	}
}

@media all and (min-width: 800px) {
	.sec01 .section-content .more-box .more-arw {
		margin-top: 30px;
		text-align: center
	}
	.sec01 .section-content .more-box .more-arw img {
		width: 20px
	}
}

.sec01 .section-content .more-box .check-list {
	position: relative;
	z-index: 5;
	margin: 15px 0 15px auto;
	padding: 15px 15px 15px 15px;
	box-sizing: border-box;
	max-width: 100%;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 1.6rem;
	font-weight: bold;
	color: #351f1f;
	background-color: #ffffff
}

@media all and (min-width: 800px) {
	.sec01 .section-content .more-box .check-list {
		max-width: 64%;
		margin: 60px 0 100px auto;
		margin-bottom: 100px;
		padding: 50px 70px 50px 40px;
		font-size: 2.8rem
	}
}

.sec01 .section-content .more-box .check-list li {
	background: url("../images/index/sec01/sec01_check_mark.png") left no-repeat;
	background-position: left 5px;
	background-size: 1.9rem;
	margin: 0 0 10px 0;
	padding-left: 25px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.sec01 .section-content .more-box .check-list li {
		background-position: left 11px;
		background-size: 2.8rem;
		padding-left: 40px
	}
}

.sec01 .section-content .more-box .check-list li:last-child {
	margin-bottom: 3px
}

.sec01 .section-content .more-box .check-list li .line {
	color: #d6707a;
	text-decoration: underline
}

.sec01 .section-content .more-box .float-img {
	position: relative;
	top: 0;
	left: 0;
	z-index: 10;
	text-align: center
}

@media all and (min-width: 800px) {
	.sec01 .section-content .more-box .float-img {
		width: 47%;
		position: absolute;
		top: 140px;
		left: -50px
	}
}

.sec01 .section-content .more-box .float-img img {
	max-width: 100%;
	margin: 0 auto
}

.sec02 {
	position: relative;
	top: -290px;
	margin-bottom: -290px
}

@media all and (min-width: 800px) {
	.sec02 {
		top: -140px;
		margin-bottom: -140px
	}
}

.sec02 .section-content-mtminus {
	top: -110px
}

.sec02 .sec-bg-wh:before {
	margin-top: 30%
}

.sec02 .fbox {
	margin-top: 20px
}

.sec02 .fbox .col3 {
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 30px
}

.sec02 .fbox .col3 img {
	padding: 0 30px;
	box-sizing: border-box
}

@media all and (min-width: 480px) {
	.sec02 .fbox .col3 {
		flex-direction: row;
		width: 47%;
		margin-bottom: 30px
	}
	.sec02 .fbox .col3 img {
		padding: 0
	}
}

@media all and (min-width: 800px) {
	.sec02 .fbox .col3 {
		flex-direction: row;
		width: 30.3%;
		margin-bottom: 0
	}
}

.sec02 .ttl {
	margin-top: 25px;
	margin-bottom: 10px;
	color: #d6707a;
	font-size: 2rem;
	line-height: 1.5
}

@media all and (min-width: 800px) {
	.sec02 .ttl {
		font-size: 2.6rem
	}
}

.sec02 .txt {
	font-size: 1.3rem;
	text-align: left
}

@media all and (min-width: 800px) {
	.sec02 .txt {
		font-size: 1.6rem
	}
}

.sec03 {
	position: relative;
	top: -190px;
	margin-bottom: -300px
}

@media all and (min-width: 800px) {
	.sec03 {
		top: -100px;
		margin-bottom: -210px
	}
}

.sec03 .section-content-mtminus {
	top: -140px
}

@media all and (min-width: 800px) {
	.sec03 .section-content-mtminus {
		top: -110px
	}
}

.sec03 .interview-box {
	border-left: 5px solid #d670a8;
	border-right: 5px solid #f5af7e;
	margin-top: 15px;
	background-color: rgba(255, 255, 255, 0.4)
}

@media all and (min-width: 800px) {
	.sec03 .interview-box {
		margin-top: 30px
	}
}

.sec03 .interview-box:first-child {
	margin-top: 0
}

.sec03 .interview-box:before {
	display: block;
	content: "";
	background-image: url("../images/index/frame_top.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 100%;
	height: 5px
}

.sec03 .interview-box:after {
	display: block;
	content: "";
	background-image: url("../images/index/frame_bottom.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 100%;
	height: 5px
}

.sec03 .fbox {
	padding: 15px;
	box-sizing: border-box;
	flex-wrap: nowrap
}

@media all and (min-width: 800px) {
	.sec03 .fbox {
		padding: 30px 30px 30px 0
	}
}

.sec03 .fbox .left {
	display: none;
	max-width: 220px;
	margin: 0 34px
}

@media all and (min-width: 800px) {
	.sec03 .fbox .left {
		display: block
	}
}

.sec03 .fbox .left img {
	width: 100%
}

.sec03 .fbox .right {
	position: relative;
	width: 100%
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right {
		width: auto
	}
}

.sec03 .fbox .right .ttl {
	font-size: 1.6rem;
	font-weight: bold;
	color: #351f1f;
	text-align: left;
	line-height: 1.5
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .ttl {
		font-size: 2.8rem
	}
}

.sec03 .fbox .right .txt-photo {
	max-width: 55%;
	margin-top: 15px;
	font-size: 1.6rem;
	text-align: left;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif
}

@media all and (max-width: 799px) {
	.sec03 .fbox .right .txt-photo {
		display: flex;
		flex-basis: auto;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: flex-start;
		max-width: 100%
	}
}

.sec03 .fbox .right .txt-photo .photo {
	max-width: 90px;
	padding-right: 15px;
	box-sizing: border-box
}

.sec03 .fbox .right .txt-photo .photo img {
	width: 100%
}

.sec03 .fbox .right .txt-photo .sub-ttl {
	font-size: 1.4rem;
	font-weight: 600
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .txt-photo .sub-ttl {
		font-size: 1.8rem
	}
}

.sec03 .fbox .right .txt-photo .job-h {
	display: block;
	font-size: 1rem;
	font-weight: bold
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .txt-photo .job-h {
		display: inline;
		font-size: 1.5rem;
		font-weight: normal
	}
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .txt-photo .job-h:after {
		display: inline;
		content: "："
	}
}

.sec03 .fbox .right .txt-photo .job-d {
	display: block;
	font-size: 1.2rem;
	padding-top: 0
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .txt-photo .job-d {
		display: inline;
		margin-top: 0;
		font-size: 1.5rem
	}
}

.sec03 .fbox .right .interview-btn {
	position: relative;
	top: 0;
	left: 0;
	bottom: auto;
	right: auto
}

@media all and (min-width: 800px) {
	.sec03 .fbox .right .interview-btn {
		position: absolute;
		top: auto;
		left: auto;
		bottom: 0;
		right: 0
	}
}

.sec-cb01 .sec-bg-wh {
	position: relative
}

.sec-cb01 .sec-bg-wh .section-inner {
	position: relative;
	z-index: 100
}

.sec04 {
	position: relative;
	top: -110px;
	margin-bottom: -110px
}

@media all and (min-width: 800px) {
	.sec04 {
		top: 0;
		margin-bottom: 0
	}
}

.sec04 .section-content-mtminus {
	top: -120px
}

@media all and (min-width: 800px) {
	.sec04 .section-content-mtminus {
		top: -90px
	}
}

.sec04 .section-content {
	overflow: visible
}

.sec04 .section-content .wide-txt p {
	font-size: 1.9rem
}

.sec04 .section-content .about-box {
	position: relative;
	margin-bottom: 30px
}

@media all and (min-width: 800px) {
	.sec04 .section-content .about-box {
		margin-bottom: 0
	}
}

.sec04 .section-content .about-box .left-txt {
	max-width: 100%;
	min-height: 250px;
	padding-top: 30px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.sec04 .section-content .about-box .left-txt {
		max-width: 74%;
		padding-top: 70px;
		min-height: auto
	}
}

@media all and (min-width: 1080px) {
	.sec04 .section-content .about-box .left-txt {
		max-width: 64%
	}
}

.sec04 .section-content .about-box .left-txt p {
	padding: 20px 30px;
	box-sizing: border-box;
	font-size: 1.3rem;
	line-height: 1.7;
	background-color: #fff
}

@media all and (min-width: 800px) {
	.sec04 .section-content .about-box .left-txt p {
		padding: 50px 60px;
		font-size: 1.8rem
	}
}

.sec04 .section-content .about-box .float-img {
	position: relative;
	bottom: 0;
	right: 0;
	z-index: 10;
	width: 50%;
	margin: 30px auto 0
}

@media all and (min-width: 800px) {
	.sec04 .section-content .about-box .float-img {
		position: absolute;
		top: 0;
		right: -50px;
		width: 34%;
		margin: 0 auto
	}
}

@media all and (min-width: 1080px) {
	.sec04 .section-content .about-box .float-img {
		width: 38%
	}
}

.sec04 .section-content .about-box .float-img-inner {
	float: right;
	clear: both;
	width: 145px;
	margin: 7px -40px 0 2px
}

@media all and (min-width: 800px) {
	.sec04 .section-content .about-box .float-img-inner {
		margin: 15px -40px 0 15px
	}
}

.sec04 .section-content .about-box .space {
	display: block;
	float: right;
	width: 1px;
	height: 220px
}

@media all and (min-width: 350px) {
	.sec04 .section-content .about-box .space {
		height: 180px
	}
}

@media all and (min-width: 400px) {
	.sec04 .section-content .about-box .space {
		height: 140px
	}
}

@media all and (min-width: 450px) {
	.sec04 .section-content .about-box .space {
		height: 100px
	}
}

@media all and (min-width: 500px) {
	.sec04 .section-content .about-box .space {
		height: 80px
	}
}

@media all and (min-width: 550px) {
	.sec04 .section-content .about-box .space {
		height: 60px
	}
}

@media all and (min-width: 600px) {
	.sec04 .section-content .about-box .space {
		height: 40px
	}
}

@media all and (min-width: 700px) {
	.sec04 .section-content .about-box .space {
		height: 0
	}
}

.sec05 {
	position: relative;
}

@media all and (min-width: 800px) {
	.sec05 {
		top: 0;
		margin-bottom: 0
	}
}

.sec05 .section-content-mtminus {
	top: -220px
}

@media all and (min-width: 800px) {
	.sec05 .section-content-mtminus {
		top: -190px
	}
}

.sec05 .sec-bg-wh:before {
	margin-top: 23%
}

.sec05 .section-content {
	overflow: visible
}

.sec05 .case-boxes .case-box {
	position: relative;
	background: linear-gradient(to bottom right, #d670a8, #f5af7e);
	padding: 5px;
	box-sizing: border-box
}

.sec05 .case-boxes .case-box-tag {
	position: absolute;
	top: 21px;
	right: -15px
}

.sec05 .case-boxes .case-box .inner {
	height: 100%;
	background-color: #fff
}

.sec05 .case-boxes .case-box .inner .box-bottom {
	padding: 15px 15px 0 15px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.sec05 .case-boxes .case-box .inner .box-bottom {
		padding: 30px 36px 10px
	}
}

.sec05 .case-boxes .case-box .inner .box-bottom .ttl {
	margin-bottom: 10px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #351f1f;
	text-align: left;
	line-height: 1.5
}

@media all and (min-width: 800px) {
	.sec05 .case-boxes .case-box .inner .box-bottom .ttl {
		font-size: 2rem
	}
}

.sec05 .case-boxes .case-box .inner .box-bottom .case-tbl {
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	font-size: 1.3rem;
	font-weight: normal
}

@media all and (min-width: 800px) {
	.sec05 .case-boxes .case-box .inner .box-bottom .case-tbl {
		font-size: 1.5rem
	}
}

.sec05 .case-boxes .case-box .inner .box-bottom .case-tbl .t-h {
	width: 9rem;
	min-width: 9rem;
	padding: 5px 0;
	box-sizing: border-box;
	background-color: rgba(69, 111, 191, 0.2);
	border-bottom: 10px solid #fff
}

.sec05 .case-boxes .case-box .inner .box-bottom .case-tbl .t-d {
	padding: 5px 0 5px 20px;
	box-sizing: border-box;
	text-align: left;
	border-bottom: 10px solid #fff
}

.sec05 .owl-carousel.owl-drag .owl-item {
	padding: 0 15px;
	box-sizing: border-box
}

.sec05 .fbox .col2 {
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 30px
}

@media all and (min-width: 800px) {
	.sec05 .fbox .col2 {
		flex-direction: row;
		width: 47%;
		margin-bottom: 30px
	}
}

.sec-cb02 {
	position: relative;
	top: -250px;
	margin-bottom: -250px
}

@media all and (min-width: 800px) {
	.sec-cb02 {
		top: -220px;
		margin-bottom: -220px
	}
}

.sec-cb02 .sec-bg-wh {
	position: relative
}

.sec-cb02 .sec-bg-wh .section-inner {
	position: relative;
	z-index: 100
}

.sec06 {
	position: relative;
	top: -110px;
	margin-bottom: -110px
}

@media all and (min-width: 800px) {
	.sec06 {
		top: 10px;
		margin-bottom: 10px
	}
}

.sec06 .section-content-mtminus {
	top: -140px
}

@media all and (min-width: 800px) {
	.sec06 .section-content-mtminus {
		top: -110px
	}
}

.sec06 .flow-box {
	position: relative;
	z-index: 10;
	margin-bottom: 30px;
	box-sizing: border-box;
	background-color: #fff
}

.sec06 .flow-box:after {
	position: absolute;
	display: block;
	z-index: 20;
	margin-top: -8px;
	content: "";
	background-image: url("../images/index/flow_tri.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
	width: 100%;
	height: 24px
}

.sec06 .flow-box:last-child:after {
	background-image: none
}

.sec06 .fbox {
	padding: 15px;
	box-sizing: border-box;
	flex-wrap: nowrap;
	justify-content: flex-start
}

@media all and (min-width: 800px) {
	.sec06 .fbox {
		padding: 33px 30px 33px 0
	}
}

.sec06 .fbox .left {
	max-width: 220px;
	min-width: 220px;
	margin: 0 34px
}

.sec06 .fbox .left img {
	width: 100%
}

.sec06 .fbox .right {
	width: 100%
}

@media all and (min-width: 800px) {
	.sec06 .fbox .right {
		padding: 0;
		width: auto
	}
}

.sec06 .fbox .right .ttl {
	font-size: 1.6rem;
	font-weight: bold;
	color: #351f1f;
	text-align: center;
	line-height: 1.5
}

@media all and (min-width: 800px) {
	.sec06 .fbox .right .ttl {
		text-align: left;
		font-size: 2.8rem
	}
}

.sec06 .fbox .right .inner-photo {
	width: 100%;
	margin-top: 15px;
	text-align: center
}

.sec06 .fbox .right .inner-photo img {
	width: 90px
}

.sec06 .fbox .right .txt {
	margin-top: 15px;
	font-size: 1.3rem;
	text-align: left
}

@media all and (min-width: 800px) {
	.sec06 .fbox .right .txt {
		margin-top: 35px;
		font-size: 1.6rem
	}
}

.sec-cb03 {
	position: relative;
	top: -170px;
	margin-bottom: -170px
}

@media all and (min-width: 800px) {
	.sec-cb03 {
		top: -140px;
		margin-bottom: -140px
	}
}

.sec-cb03 .sec-bg-wh {
	position: relative
}

.sec-cb03 .sec-bg-wh .section-inner {
	position: relative;
	z-index: 100
}

.sec-cb04 {
	position: relative;
	top: -150px;
	margin-bottom: -150px;
	margin-top: 55px !important;
}

@media all and (min-width: 800px) {
	.sec-cb04 {
		top: -140px;
		margin-bottom: -140px;
		margin-top: 90px !important;
	}
}

.sec-cb04 .sec-bg-wh {
	position: relative
}

.sec-cb04 .sec-bg-wh .section-inner {
	position: relative;
	z-index: 100
}

.sec07 {
	position: relative;
	top: -110px;
	margin-bottom: -110px
}

@media all and (min-width: 800px) {
	.sec07 {
		top: 0;
		margin-bottom: 0
	}
}

.sec07 .sec-bg-wh:before {
	height: 125%
}

.sec07 .section-content-mtminus {
	top: -150px
}

@media all and (min-width: 800px) {
	.sec07 .section-content-mtminus {
		top: -90px
	}
}

.sec07 .comparison-tbl {
	width: 100%;
	max-width: 800px;
	margin: 30px auto 0;
	border-top: 2px solid #351f1f;
	border-bottom: 2px solid #351f1f;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 600
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl {
		margin-top: 100px
	}
}

.sec07 .comparison-tbl th {
	padding: 15px 0;
	font-size: 1.1rem;
	border-bottom: 1px dotted #351f1f;
	border-right: 1px solid #351f1f
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl th {
		font-size: 2.2rem;
		padding: 19px 0 20px 0
	}
}

.sec07 .comparison-tbl th.l-col {
	width: 42%
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl th.l-col {
		width: 36%
	}
}

.sec07 .comparison-tbl th.r-col {
	width: 29%
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl th.r-col {
		width: 32%
	}
}

.sec07 .comparison-tbl th:last-child {
	border-right-style: none
}

.sec07 .comparison-tbl td {
	padding: 15px 0;
	text-align: center;
	border-bottom: 1px dotted #351f1f;
	border-right: 1px solid #351f1f
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl td {
		padding: 34px 0 35px 0
	}
}

.sec07 .comparison-tbl td:last-child {
	border-right-style: none
}

.sec07 .comparison-tbl td img {
	width: auto;
	height: 18px;
	vertical-align: middle
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl td img {
		height: 36px
	}
}

.sec07 .comparison-tbl .m-row th,
.sec07 .comparison-tbl .m-row td {
	background-color: rgba(255, 192, 192, 0.1)
}

.sec07 .comparison-tbl .m-row th {
	font-size: 1.5rem;
	font-weight: 900
}

@media all and (min-width: 800px) {
	.sec07 .comparison-tbl .m-row th {
		font-size: 2.8rem
	}
}

.sec07 .comparison-tbl .h-row th {
	border-bottom: 1px solid #351f1f
}

.sec08 {
	position: relative;
	top: -240px;
	margin-bottom: -240px
}

@media all and (min-width: 800px) {
	.sec08 {
		top: -60px;
		margin-bottom: -60px
	}
}

.sec08 .section-content-mtminus {
	top: -140px
}

@media all and (min-width: 800px) {
	.sec08 .section-content-mtminus {
		top: -110px
	}
}

.sec08 .qa-q {
	background-color: #fff
}

.sec08 .fbox {
	padding: 5px 0 5px 0;
	flex-wrap: nowrap;
	justify-content: flex-start
}

@media all and (min-width: 800px) {
	.sec08 .fbox {
		padding: 14px 0 14px 0
	}
}

.sec08 .fbox .left {
	max-width: 55px;
	min-width: 55px;
	margin: 0 15px
}

@media all and (min-width: 800px) {
	.sec08 .fbox .left {
		max-width: 110px;
		min-width: 110px;
		margin: 0 30px
	}
}

.sec08 .fbox .left img {
	width: 100%
}

.sec08 .fbox .right {
	width: 100%
}

.sec08 .fbox .right .ttl,
.sec08 .fbox .right .txt {
	text-align: left;
	line-height: 1.5;
	position: relative;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	padding-right: 80px;
	box-sizing: border-box
}

.sec08 .fbox .right .ttl {
	font-size: 1.4rem;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #351f1f;
	padding-left: 15px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.sec08 .fbox .right .ttl {
		padding-left: 0;
		font-size: 2.4rem
	}
}

.sec08 .fbox .right .txt {
	line-height: 1.8;
	font-size: 1.3rem
}

@media all and (min-width: 800px) {
	.sec08 .fbox .right .txt {
		font-size: 1.6rem
	}
}

.sec-form {
	position: relative;
	top: -90px;
	margin-bottom: -200px;
	background-color: rgba(228, 228, 239, 0.7)
}

@media all and (min-width: 800px) {
	.sec-form {
		top: -30px;
		margin-bottom: -140px
	}
}

.sec-form .section-content-mtminus {
	top: -200px
}

.sec-form .sec-bg-wh:before {
	margin-top: 22%
}

.sec-form .contact-txt .txt-c {
	font-size: 1.8rem;
	text-align: center
}

.sec-form .contact-txt .txt-c-sup {
	max-width: 670px;
	margin: 40px auto 0;
	font-size: 1.3rem;
	text-align: left
}

.sec-form .txt-l-sup {
	margin-top: 16px;
	margin-bottom: 20px;
	font-size: 1.3rem;
	text-align: left
}

.sec-form .form-tag {
	font-size: 2.5rem;
	color: #fff;
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	margin-top: 80px;
	padding: 13px 0 15px 28px;
	background-image: url("../images/contact/form_tag.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 156px;
	height: 24px
}

.sec-form .form-tag-wide {
	width: 230px;
	background-image: url("../images/contact/form_tag_wide.png")
}

.contact-box {
	position: relative;
	margin-top: 30px;
	background-color: rgba(228, 228, 239, 0.7)
}

@media all and (min-width: 800px) {
	.contact-box {
		margin-top: 90px
	}
}

.contact-box .sec-bg-wh:before {
	margin-top: 15%
}

.contact-box .sec-bg-wh:before {
	height: 380px
}

.accbox .acc-btn {
	display: block;
	width: 100%
}

@media all and (min-width: 800px) {
	.accbox .acc-btn {
		display: none
	}
}

.accbox label {
	display: block;
	cursor: pointer;
	transition: all 0.5s;
	position: relative;
	padding-right: 30px !important;
	box-sizing: border-box
}

.accbox label .i-down {
	content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAKCAYAAABWiWWfAAABl0lEQVQ4T4WQv0sDMRTH30vukiIWWouL+AcIQldXC06KTnVxUamToLjY+SaLUiedBKkUBOkNDroJgi6OToq/UATRoTi4tKV3uci7tEetFQMhL8l7H77fL96li1sAsA6oob2Qa0CuAK0AmB0A2j4w4QPaCjidku6mDt+lD9xWG6hB4326uAuIywRDRhAdDjKrBQphCpAA0gcUHnC6E9T87SQL5VUkAAEf0tslsIJ55AGgpYARzFYGSgBSJT2jRKjwNFuVEoVyDgF0CAuBsxX++Pp8hFxlIwgNtS1STUpCi5HtSvKpPoeuq0JXUVAAcDPqiFiKH6PtT7bkA5NkzwcuWqpkpOokIRpZdNxmlHUnjOr3aaev6XmnTKiMCZbUtK2a7JjwzhOST6Fz0Oic/6Gs/VGdyccbIjjjUo1R2AZgoNz2r2oyNjHk7NW6hfSEUdPLwloixtQFE36a2QQMSNG1DhqZgU33qxv0K7Puho/FlUGrv37JZDDChLq1dG08XnCrvUD/wqjhM780jLy5r6XKpZzDt79A9P4NA9KmVw7v3w4AAAAASUVORK5CYII=");
	width: 19px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	background-image: url("../images/index/flow_tri.png");
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat
}

.accbox input.cssacc,
.accbox .acc-btn input {
	display: none
}

.accbox .accshow {
	height: 0;
	padding: 0;
	margin-top: 5px;
	margin-bottom: 5px;
	overflow: hidden;
	opacity: 0;
	transition: 1s
}

.accbox .cssacc:checked+label+.accshow {
	height: auto;
	opacity: 1;
	transition: 1s
}

.accbox .cssacc:checked+label .i-down,
.accbox .acc-btn input:checked+label .i-down {
	transform: translateY(-50%) scale(1, -1);
	-webkit-transform: translateY(-50%) scale(1, -1)
}

.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev {
	position: absolute;
	color: inherit !important;
	border: none !important;
	padding: 0 !important;
	font: inherit !important;
	width: 32px !important;
	height: 32px !important;
	background-position: center center !important;
	background-size: contain !important;
	background-repeat: no-repeat !important
}

.owl-carousel .owl-nav button.owl-next:hover,
.owl-carousel .owl-nav button.owl-prev:hover {
	opacity: 0.7;
	background-color: transparent !important
}

.owl-carousel .owl-nav button.owl-next {
	right: -25px;
	top: 50%;
	transform: translateY(-100%) scale(1, -1);
	-webkit-transform: translateY(-100%) scale(1, -1);
	background-image: url("../images/slider/nav_next.png") !important
}

.owl-carousel .owl-nav button.owl-prev {
	left: -25px;
	top: 50%;
	transform: translateY(-100%) scale(1, -1);
	-webkit-transform: translateY(-100%) scale(1, -1);
	background-image: url("../images/slider/nav_prev.png") !important
}

.contact .sec-form {
	position: relative;
	top: 25px;
	margin-bottom: 25px
}

.header {
	width: 100%
}

.header-flex {
	display: flex;
	justify-content: space-between;
	flex-basis: auto;
	flex-wrap: nowrap;
	align-items: stretch
}

.header-logo-inner {
	display: inline-block;
	padding: 8px 0 0 30px;
	box-sizing: border-box
}

.header-logo-inner img {
	width: auto;
	width: auto;
	max-height: 70px
}

@media all and (min-width: 800px) {
	.header-logo-inner img {
		max-height: 51px
	}
}

.gnav {
	font-size: 1.4rem;
	background: rgba(255, 255, 255, 0.7)
}

@media all and (min-width: 800px) {
	.gnav {
		background: transparent
	}
}

.gnav-menubtn {
	width: 20px;
	height: 20px;
	position: fixed;
	top: 15px;
	right: 5%
}

.gnav-menubtn-icon {
	display: block;
	width: 20px;
	height: 20px;
	position: relative;
	fill: txt01(1)
}

@media all and (min-width: 800px) {
	.gnav-menubtn {
		display: none
	}
}

.gnav-inner {
	display: none;
	margin: 0 auto;
	overflow: hidden
}

@media all and (min-width: 800px) {
	.gnav-inner {
		width: 450px;
		display: table
	}
}

.gnav-item {
	display: block
}

@media all and (min-width: 800px) {
	.gnav-item {
		display: table-cell
	}
}

.gnav-item-inner {
	width: 90%;
	display: block;
	padding: 3px 5%;
	color: txt01(1);
	font-weight: bold;
	text-align: center
}

@media all and (min-width: 800px) {
	.gnav-item-inner {
		padding: 8px 5px
	}
}

.gnav-item-inner:hover,
.gnav-item-inner:focus {
	filter: alpha(opacity=70);
	opacity: 0.7
}

.gnav-item-inner.current {
	color: effect01(1)
}

.footer {
	background-color: #fff
}

.footer-cr {
	padding: 15px 0;
	text-align: center;
	font-size: 1.2rem;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif
}

.fix-fotter {
	z-index: 1000
}

.fix-fotter.fix {
	position: fixed;
	width: 100%;
	bottom: 0
}

.fix-fotter.section {
	padding: 10px 0
}

.fix-fotter.contact-box {
	align-items: center
}

@media all and (min-width: 800px) {
	.fix-fotter.contact-box {
		margin-top: 0
	}
}

.fix-fotter.contact-box .col {
	width: 100%
}

@media all and (min-width: 800px) {
	.fix-fotter.contact-box .col {
		width: 50%
	}
}

.fix-fotter.contact-box .contact-head {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 2.8rem;
	font-weight: bold;
	letter-spacing: 0.3rem;
	text-align: center
}

@media all and (max-width: 799px) {
	.fix-fotter.contact-box .contact-head {
		display: none
	}
}

.fix-fotter .flex-btns {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap
}

.fix-fotter .flex-btns .left {
	width: 100%
}

.fix-fotter .flex-btns .right {
	flex-shrink: 0
}

.fix-fotter .anchor-top {
	width: 52px;
	height: 50px;
	margin-left: 15px
}

@media all and (min-width: 800px) {
	.fix-fotter .anchor-top {
		width: 60px;
		height: 58px
	}
}

.fix-fotter .reg-btn-contact-box {
	margin: 0 auto;
	box-sizing: border-box;
	font-weight: bold
}

@media all and (min-width: 800px) {
	.fix-fotter .reg-btn-contact-box {
		margin-top: 0;
		font-size: 2.8rem
	}
}

.fix-fotter .reg-btn-contact-box a {
	padding: 15px 0
}

.btn {
	width: 100%;
	clear: both;
	text-align: center
}

@media all and (min-width: 600px) {
	.btn {
		width: 250px
	}
}

.btn-inner {
	width: 100%;
	padding: 10px 10% 14px 0;
	display: block;
	background: #c2383e;
	color: #fff;
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.2;
	cursor: pointer;
	position: relative;
	box-sizing: border-box
}

.btn-inner:hover,
.btn-inner:focus {
	color: #fff
}

.btn .arrow {
	width: 20px;
	height: 20px;
	fill: #928244;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 5%;
	margin: auto
}

@media (min-width: 600px) {
	.btn .arrow {
		right: 15px
	}
}

.reg-btn {
	background-color: #d670a8;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Lucida Grande", "segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Verdana", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	line-height: 1
}

.reg-btn a {
	color: #fff;
	display: block;
	padding: 13px 0 12px 0;
	box-sizing: border-box
}

.reg-btn-header {
	width: 135px;
	margin: 7px 15px 0 0;
	font-size: 1.6rem
}

.reg-btn-header a {
	padding: 10px 0 9px 0
}

@media all and (min-width: 800px) {
	.reg-btn-header {
		width: 186px;
		margin: 16px 69px 0 0
	}
	.reg-btn-header a {
		padding: 13px 0 12px 0
	}
}

.reg-btn-header .inner {
	font-size: 1.2rem
}

.reg-btn-hero {
	width: 94%;
	margin: 15px auto 0;
	box-sizing: border-box;
	font-size: 1.6rem
}

@media all and (min-width: 600px) {
	.reg-btn-hero {
		width: 410px
	}
}

@media all and (min-width: 800px) {
	.reg-btn-hero {
		margin-top: 30px;
		font-size: 2.8rem
	}
}

.reg-btn-hero a {
	padding: 15px 0 15px 0
}

@media all and (min-width: 800px) {
	.reg-btn-hero a {
		padding: 26px 0 27px 0
	}
}

.reg-btn-hero .inner {
	font-size: 1.2rem
}

@media all and (min-width: 800px) {
	.reg-btn-hero .inner {
		font-size: 2.4rem
	}
}

.reg-btn-contact-box {
	width: 100%;
	margin: 15px auto 0;
	box-sizing: border-box;
	font-size: 2rem;
	font-weight: bold
}

@media all and (min-width: 600px) {
	.reg-btn-contact-box {
		width: 540px
	}
}

@media all and (min-width: 800px) {
	.reg-btn-contact-box {
		margin-top: 30px;
		font-size: 2.8rem
	}
}

.reg-btn-contact-box a {
	padding: 15px 0
}

@media all and (min-width: 800px) {
	.reg-btn-contact-box a {
		padding: 26px 0 27px 0
	}
}

.reg-btn-contact-box .inner {
	font-size: 1.5rem
}

@media all and (min-width: 800px) {
	.reg-btn-contact-box .inner {
		font-size: 2.4rem
	}
}

.reg-btn-contact-form {
	width: 100%;
	margin: 30px auto 0;
	box-sizing: border-box;
	font-size: 2rem;
	font-weight: bold
}

@media all and (min-width: 600px) {
	.reg-btn-contact-form {
		width: 220px
	}
}

.reg-btn-contact-form a {
	padding: 16px 0 19px 0
}

.reg-btn-contact-form .inner {
	font-size: 2.4rem
}

.interview-btn {
	margin: 15px 0 0 auto;
	max-width: 100%;
	background-color: #f07e2e;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Lucida Grande", "segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Verdana", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	line-height: 1;
	font-size: 1.3rem
}

@media all and (min-width: 800px) {
	.interview-btn {
		margin-top: -15px;
		width: 230px;
		font-size: 1.6rem
	}
}

.interview-btn a {
	color: #fff;
	display: block;
	padding: 13px 0 12px 0;
	box-sizing: border-box
}

.form-btns {
	display: flex;
	flex-grow: 1;
	justify-content: space-around;
	flex-basis: auto;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: stretch
}

@media all and (min-width: 600px) {
	.form-btns {
		flex-wrap: nowrap;
		flex-direction: row
	}
}

.form-btns .btn {
	margin: 0 auto;
	text-align: center;
	background-color: #d670a8;
	color: #fff
}

.form-btns .btn-back {
	margin-bottom: 30px;
	width: 100%
}

@media all and (min-width: 600px) {
	.form-btns .btn-back {
		margin-bottom: 0;
		width: 220px
	}
}

.form-btns .btn-back a {
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	background-image: url("../../assets/images/contact/arw_back_wh.png");
	background-size: auto 16px;
	background-repeat: no-repeat;
	background-position: 12px center;
	padding: 16px 0 19px 0;
	box-sizing: border-box;
	text-decoration: none;
	background-color: #d670a8
}

@media all and (min-width: 600px) {
	.form-btns .btn-back a {
		padding: 16px 0 19px 36px
	}
}

.form-btns .btn-send {
	margin: 0 auto;
	width: 100%
}

@media all and (min-width: 600px) {
	.form-btns .btn-send {
		width: 220px
	}
}

.form-btns .btn-send .submit {
	border: 0px;
	color: #fff;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	width: 100%;
	background-color: #d670a8;
	background-position: 25px center;
	background-repeat: no-repeat;
	padding: 16px 0 19px 0;
	box-sizing: border-box;
	cursor: pointer
}

.headline {
	font-size: 1.4rem;
	text-align: center;
	line-height: 1;
	position: relative;
	font-weight: normal
}

.headline:after {
	content: '';
	width: 180px;
	display: inline-block;
	border-bottom: 1px solid #000;
	position: absolute;
	left: 0;
	right: 0;
	top: 65%;
	margin: auto
}

.subheadline {
	font-size: 2.4rem;
	font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
	font-style: normal;
	font-weight: 600;
	color: #351f1f;
	text-align: center;
	line-height: 1.4;
	position: relative
}

@media all and (min-width: 800px) {
	.subheadline {
		line-height: 1;
		font-size: 4rem;
		letter-spacing: 0.3rem
	}
}

.subheadline:after {
	content: '';
	width: 136px;
	display: block;
	border-bottom: 1px solid #000;
	position: relative;
	margin: 30px auto
}

@media all and (min-width: 800px) {
	.subheadline:after {
		margin: 60px auto
	}
}

.subheadline-nob:after {
	content: none;
	border-bottom-style: none
}

input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0
}

.formtbl {
	width: 100%;
	margin: 0 auto 0 0
}

.formtbl th {
	width: 100%;
	text-align: left;
	background: sub03(1);
	color: wh(1);
	padding: 15px 15px 0 15px;
	font-size: 1.6rem;
	font-weight: normal;
	box-sizing: border-box;
	vertical-align: top;
	display: block
}

@media all and (min-width: 650px) {
	.formtbl th {
		width: 180px;
		padding: 15px;
		display: table-cell;
		border-right: 5px solid wh(1);
		border-bottom: 5px solid wh(1)
	}
}

.formtbl td {
	font-size: 1.6rem;
	border-bottom: 5px solid wh(1);
	background: sub01(0.24);
	padding: 15px;
	box-sizing: border-box;
	display: block
}

@media all and (min-width: 650px) {
	.formtbl td {
		display: table-cell
	}
}

.formtbl input,
.formtbl textarea {
	border: none;
	width: 94%;
	margin-top: -10px;
	padding: 10px 3%
}

.formtbl input.check,
.formtbl textarea.check {
	width: inherit
}

.formtbl select {
	margin-top: -10px;
	padding: 10px 30px 10px 10px;
	height: 42px;
	border-style: none;
	border-radius: 0;
	background-color: #fff
}

.formtbl #rule {
	text-indent: -2.5rem;
	padding-left: 2.5rem
}

.formtbl #rule a {
	color: effect01(1);
	text-decoration: underline
}

.formtbl #rule a:hover,
.formtbl #rule a:focus {
	text-decoration: none
}

.formtbl .error {
	color: #c2383e;
	font-size: 80%
}

.formtbl .flex-clms {
	display: flex;
	justify-content: flex-start;
	flex-basis: auto;
	flex-wrap: wrap;
	align-items: stretch
}

.formtbl .flex-clms .col {
	margin-top: 15px
}

@media all and (min-width: 800px) {
	.formtbl .flex-clms .col {
		margin-top: 0
	}
}

.formtbl .flex-inputs {
	display: flex;
	justify-content: flex-start;
	flex-basis: auto;
	flex-wrap: nowrap;
	align-items: stretch
}

.formtbl .flex-inputs-h {
	width: 7em;
	padding-right: 10px;
	box-sizing: border-box;
	margin-bottom: 15px
}

@media all and (min-width: 800px) {
	.formtbl .flex-inputs-h {
		margin-top: 0;
		margin-bottom: 0
	}
}

.formtbl .flex-inputs-h-first {
	margin-top: 0
}

.formtbl .flex-inputs-d {
	width: 10em;
	text-align: left
}

.formtbl .input-sup {
	padding: 0 10px
}

.formtbl .len-1 input {
	max-width: 3em
}

.formtbl .len-2 input {
	max-width: 4em
}

.formtbl .len-3 input {
	max-width: 5em
}

.formtbl .len-4 input {
	max-width: 6em
}

.formtbl .interest textarea {
	height: 220px
}

.formtbl .agreement input[type="checkbox"] {
	width: 14px
}

.formtbl .agreement a {
	color: #d6707a;
	text-decoration: underline
}

.confirm .formtbl th {
	font-weight: bold
}

@media all and (min-width: 650px) {
	.confirm .formtbl th {
		font-weight: normal
	}
}

.btn-submit {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	width: 100% !important;
	height: 70px !important;
	border: none;
	background: transparent;
	cursor: pointer
}

.form-btns {
	margin: 45px auto 0;
	overflow: hidden
}

@media all and (min-width: 650px) {
	.form-btns {
		width: 530px
	}
}

.form-btns .btn-small {
	margin: 0;
	clear: none
}

@media all and (min-width: 650px) {
	.form-btns .btn-back {
		float: left
	}
}

@media all and (min-width: 650px) {
	.form-btns .btn-send {
		float: right
	}
}

.hero-index {
	padding-top: 10px
}

@media all and (min-width: 800px) {
	.hero-index {
		padding-top: 60px
	}
}

.hero-index h1 {
	margin-top: 25px;
	font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 1.3rem;
	line-height: 1.5;
	color: #351f1f;
	text-shadow: 1px 1px 1px #fff
}

@media all and (min-width: 420px) {
	.hero-index h1 {
		margin-top: 30px;
		font-size: 1.45rem
	}
}

@media all and (min-width: 470px) {
	.hero-index h1 {
		margin-top: 40px;
		font-size: 1.55rem
	}
}

@media all and (min-width: 495px) {
	.hero-index h1 {
		font-size: 1.63rem
	}
}

@media all and (min-width: 520px) {
	.hero-index h1 {
		font-size: 1.7rem
	}
}

@media all and (min-width: 620px) {
	.hero-index h1 {
		font-size: 1.9rem
	}
}

@media all and (min-width: 720px) {
	.hero-index h1 {
		margin-top: 48.5px;
		font-size: 2.1rem
	}
}

@media all and (min-width: 800px) {
	.hero-index h1 {
		margin-top: 57px;
		line-height: 1.8;
		text-shadow: none
	}
}

@media all and (min-width: 820px) {
	.hero-index h1 {
		font-size: 3.4rem
	}
}

.hero-index h1 .hl-img-pc {
	margin-bottom: 19px;
	width: 582px
}

@media all and (min-width: 1080px) {
	.hero-index h1 .hl-img-pc {
		width: 655px
	}
}

@media all and (min-width: 1200px) {
	.hero-index h1 .hl-img-pc {
		width: 728px
	}
}

.hero-index h1 .hl-img-pc img {
	width: 100%
}

.hero-index h1 .hl-img-sp {
	margin-bottom: 5px;
	width: 100%
}

@media all and (min-width: 340px) {
	.hero-index h1 .hl-img-sp {
		width: 287px;
		margin-top: 10px
	}
}

@media all and (min-width: 420px) {
	.hero-index h1 .hl-img-sp {
		width: 317px
	}
}

@media all and (min-width: 470px) {
	.hero-index h1 .hl-img-sp {
		width: 337px
	}
}

@media all and (min-width: 495px) {
	.hero-index h1 .hl-img-sp {
		width: 362px
	}
}

@media all and (min-width: 520px) {
	.hero-index h1 .hl-img-sp {
		width: 387px
	}
}

@media all and (min-width: 620px) {
	.hero-index h1 .hl-img-sp {
		width: 437px;
		margin-top: 13px
	}
}

@media all and (min-width: 720px) {
	.hero-index h1 .hl-img-sp {
		width: 487px;
		margin-top: 16px
	}
}

.hero-index h1 .hl-img-sp img {
	width: 100%
}

.hero-tag {
	max-width: 165px;
	background-image: url("../images/index/hero/main_tag1_bg.png");
	background-position: right top;
	background-repeat: no-repeat;
	background-size: auto 100%;
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1.3rem;
	letter-spacing: -1px;
	color: #fff;
	line-height: 1;
	padding: 7px 15px 8px 13px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.hero-tag {
		max-width: 330px;
		padding: 13px 30px 16px 26px;
		font-size: 2.5rem
	}
}

.hero-reg-box {
	position: relative;
	z-index: 100;
	max-width: 540px;
	border-left: 5px solid #d670a8;
	border-right: 5px solid #f5af7e;
	background-color: rgba(255, 255, 255, 0.7);
	margin-top: 25px
}

@media all and (min-width: 800px) {
	.hero-reg-box {
		margin-top: 45px
	}
}

.hero-reg-box:before {
	display: block;
	content: "";
	background-image: url("../images/index/frame_top.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 100%;
	height: 5px
}

.hero-reg-box:after {
	display: block;
	content: "";
	background-image: url("../images/index/frame_bottom.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 100%;
	height: 5px
}

.hero-reg-box div.inner {
	padding: 15px;
	box-sizing: border-box
}

@media all and (min-width: 800px) {
	.hero-reg-box div.inner {
		padding: 36px 0 50px 0
	}
}

.hero-reg-box div.inner .ttl {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Lucida Grande", "segoe UI", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Verdana", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5
}

@media all and (min-width: 800px) {
	.hero-reg-box div.inner .ttl {
		font-size: 2.8rem;
		line-height: 1.8
	}
}

.pager {
	clear: both;
	text-align: center;
	margin-bottom: 30px
}

@media all and (min-width: 800px) {
	.pager {
		margin-bottom: 60px
	}
}

.pager span {
	margin: 0 2px
}

.pager span.current {
	background: sub03(1);
	color: wh(1);
	padding: 5px 9px;
	margin: 0 2px
}

.pager a {
	padding: 5px 9px;
	margin: 0 5px;
	color: txt01(1);
	text-decoration: none
}

.pager a:hover,
.pager a:focus {
	color: effect01(1)
}

.pager a.page {
	background: base02(0.8)
}

.pager a.page:hover,
.pager a.page:focus {
	background: effect01(1);
	color: wh(1)
}

.pager .page-numbers {
	background: base02(0.8)
}

.pager .page-numbers:hover,
.pager .page-numbers:focus {
	background: effect01(1);
	color: wh(1)
}

.pager .page-numbers.next,
.pager .page-numbers.prev {
	background: transparent
}

.pager .page-numbers.next:hover,
.pager .page-numbers.next:focus,
.pager .page-numbers.prev:hover,
.pager .page-numbers.prev:focus {
	background: transparent;
	color: effect01(1)
}

.postarea h4 {
	font-size: 2rem;
	font-weight: bold
}

.postarea h5 {
	font-size: 1.7rem;
	font-weight: bold
}

.postarea img {
	width: 100%;
	height: inherit
}

@media all and (min-width: 650px) and (max-width: 799px) {
	.postarea img.vertically-S {
		width: inherit
	}
}

@media all and (min-width: 800px) {
	.postarea img.vertically-S {
		width: inherit
	}
}

@media all and (min-width: 650px) and (max-width: 799px) {
	.postarea img.horizontally-S {
		width: inherit
	}
}

@media all and (min-width: 800px) {
	.postarea img.horizontally-S {
		width: inherit
	}
}