@charset "utf-8";

/* base */
:root {
	--base-color: #f8e4e0;
	--main-color: #de8a83;
	--secondary-color: #fdf6f5;
	--accent-color: #d9a7a0;
	--base-text-color: #3a2b2b;
}
body {
	min-width: 1200px;
	width: 100%;
	margin: 0 auto;
	color: var(--base-text-color);
	font-size: 16px;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	line-height: 1.5;
}
a {
	text-decoration: none;
	color: var(--main-color);
}
a:hover {
	color: #a03458;
	transition: 0.5s;
}
a:hover img {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-moz-opacity: 0.60;
	-ms-filter: "alpha(opacity=60)";
	transition: 0.5s;
}

/* common */
.contact-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	
}
.contact-wrapper > p {
	font-family: "Hina Mincho", serif;
	font-weight: 400;
	font-style: normal;
	//font-family: "Noto Serif JP", serif;
	//font-weight: 600;
	font-style: normal;
	font-size: 1.1rem;
	color: var(--main-color);
	margin-bottom: 1rem;
}
.contact-wrapper ul {
	display: flex;
	justify-content: center;
}
.contact-wrapper ul li {
	display: flex;
	margin-left: 0.5rem;
}

.contact-btn {
	border-radius: 5px;
	padding: 5px 15px;
	border-width: 1px;
	border-style: solid;
	font-size: 1rem;
	font-weight: 400;
	display: flex;
	align-items: center;
	text-align: center;
}
.contact-btn i {
	margin-right: 0.5rem;
	font-size: 1.8rem;
}
.contact-btn span {
	display: flex;
}
.contact-tel-btn {
	font-size: 1.8rem;
	color: #4e2e2e;
	border-color: #4e2e2e;
}
.contact-tel-btn span {
	font-family: 'Inter', sans-serif;
	font-family: 'Space Grotesk', sans-serif;
	font-family: "Crimson Text", serif;
	font-style: italic;
}
.contact-form-btn {
	background: #ff8d1e;
	color: #ffffff;
	border-color: #dd7c1d;
}
.contact-line-btn {
	background: #00c300;
	color: #ffffff;
	border-color: #019501;
}

.site-title a {
	font-family: "Kaisei Opti", serif;
	font-weight: 600;
	font-style: normal;
	font-size: 1.8rem;
}

.arrow_box {
	position: relative;
	background: var(--base-color);
	padding: 10px 15px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
    width: calc(100% - 15px);
	box-sizing: border-box;
	margin-left: 15px;
}
.arrow_box:after {
	top: 45px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	right: 100%;
	border-color: rgba(255, 255, 255, 0);
	border-width: 15px;
	margin-top: -25px;
	border-right-color: var(--base-color);
}
.arrow_box.right {
	margin-left: 0;
	margin-right: 15px;
}
.arrow_box.right:after {
	border-left-color: var(--base-color);
	border-right-color: transparent;
	right: auto;
	left: 100%;
}
/* header */
section.header-wrapper {
	width: 100%;
}

header {
	border-bottom: solid 3px var(--main-color);
}
header > section.header-wrapper {
	display: flex;
}
header #logo_break {
	//width: 23%;
	width: 220px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
header #logo_break #logo-s {
	display: none;
}
header h1 {
	//width: 25%;
	width: fit-content;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
header h1 a {
	display: flex;
	flex-direction: column;
	align-items: center;
}
header h1 a span:first-of-type {
	font-size: 1rem;
}
header h1 a span:nth-of-type(2) {
}
header h1 a span:last-of-type {
	background: var(--main-color);
	color: #ffffff;
	font-size: 1.3rem;
}
header .contact-wrapper {
	width: 52%;
	text-align: right;
	margin-left: auto;
}
header .contact-wrapper > p {
}
header .contact-wrapper ul {
	justify-content: end;
	margin-right: 30px;
}
header .contact-wrapper ul li {
}

/* structure */

section {
	width: 1120px;
	padding: 0 0;
	margin: 0 auto;
}

#body {
	margin-top: 30px;
	letter-spacing: -0.4em;
	display: flex;
	justify-content: space-between;
	overflow: visible;
	align-items: flex-start;
}
#side, #main {
	//display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
}
#side {
	width: calc(100% - 816px - 16px);
	margin-right: 16px;
	position: sticky;
	top: 0;
}
#main {
	width: 816px;
}
h2 {
	background: var(--main-color);
	color: #ffffff;
	text-align: center;
	margin: 0 -5px 30px;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	font-family: "Hina Mincho", serif;
	font-weight: 400;
	font-size: 2.2rem;
	letter-spacing: 0.8rem;
}
h3 {
	margin: 0 0 20px;
	padding-bottom: 5px;
	font-size: 1.8rem;
	color: var(--main-color);
	display: block;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	border-bottom: 3px solid var(--main-color);
}
#main .content-wrapper {
	padding: 0 5px;
	margin-bottom: 30px;
}



/* side */

#side .navigation, #side .information {
	margin-bottom: 30px;
	border: 1px solid var(--main-color);
	border-radius: 10px 10px 0 0;
	
}

#side .sub {
	line-height: 47px;
	background: var(--main-color);
	color: #ffffff;
	font-family: "Kaisei Opti", serif;
	font-weight: 300;
	font-size: 1.5rem;
	font-family: "Hina Mincho", serif;
	font-weight: 400;
	letter-spacing: 0.3rem;
	text-align: center;
	border: none;
	border-top-left-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-moz-border-radius-topleft: 10px;
	border-top-right-radius: 10px;
    -webkit-border-top-right-radius: 10px;
    -moz-border-radius-topright: 10px;
}

#side .navigation {
}
#side .navigation li:not(.sub) {
	line-height: 47px;
	border-bottom: solid 1px var(--base-color);
	text-align: center;
	font-size: 18px;
}
#side .navigation li:last-child {
	//border-bottom: solid 1px #f5598d;
}
#side .navigation li a {
	color: #333;
	display: block;
}
#side .navigation li a:hover {
	color: var(--accent-color);
	background: var(--base-color);
	transition: 0.5s;
}
#side .navigation li.sub{
}
#side .navigation li i {
	padding: 0 15px;
	color: #f8aac4;
    font-size: 14px;
    vertical-align: middle;
}

#side .information {
}
#side .information .sub{
}
#side .information .block {
	padding: 15px 0px 15px 10px;
}
#side .information ul {
	overflow-y: auto;
    eight: 271px;
}
#side .information li {
	border-bottom: dotted 1px #999;
	margin-right: 5px;
}
#side .information li:first-child {
	order-top: dotted 1px #999;
}
#side .information li {
	padding: 5px;
	color: #333;
	display: block;	
}
#side .information li a:hover {
	color: #fff;
	background: #fc94b7;
	transition: 0.5s;
}

#side video {
	max-height: 100vh;
	margin-bottom: 30px;
}


/* footer */


#footerBtn {
	padding: 15px 0;
	text-align: center;
	background: var(--secondary-color);
}

footer {
	background: var(--main-color);
	text-align: center;
	padding: 30px 0 5px 0;
}
footer .site-title a {
	color: #ffffff;
}
#footerMenu {
	padding: 0;
	width: 1120px;
	margin: 0 auto;
	margin-bottom: 30px;
}
#footerMenu ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
#footerMenu li {
	margin-left: 10px;
    margin-right: 10px;
    font-size: 1rem;
}
#footerMenu li:last-child {
	margin-right: 0;
}
#footerMenu li i {
	margin-right: 5px;
}

#footerMenu li a {
	display: block;
	color: #ffffff;
}
#footerMenu li a:hover {
	color: #a03458;
}
footer small {
	font-size: 12px;
	line-height: 25px;
	color: #fff;
}
footer small a {
	color: #fff;
}
footer small a:hover {
	color: #f8aac4;
}

div.btnup {
    position: fixed;
    width: 36px;
    right: 10px;
    bottom: 10px;
}
div.btnup a {
    width: 36px;
    line-height: 35px;
    background: #f8aac4;
    display: block;
    border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    text-align: center;
}
div.btnup a:hover {
    background: #f5598d;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
div.btnup a i {
    color: #fff !important;
    font-size: 18px;
    padding-top: 5px;
}


.flex-control-thumbs {
	display: flex;
}

/* recruiting */

.recruiting  ul {
	display: flex;
	text-align: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.recruiting li {
	border: solid 1px var(--main-color);
	width: calc((100% - 10px) / 3);
	letter-spacing: normal;
	padding: 10px;
	margin-top: 10px;
	box-sizing: border-box;
	border-radius: 5px;
}

.recruiting li .title {
	font-size: 1.2rem;
	color: var(--main-color);
	display: block;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	letter-spacing: -0.1em;
}

.recruiting li span:not(.title) {
	letter-spacing: -0.15em;
	font-size: 0.9rem;
}


/* reason */

.reason {
}
.reason ul li {
	padding: 20px;
	margin-bottom: 5px;
	border: solid 1px var(--main-color);
	display: flex;
}
.reason ul li:nth-of-type(2) {
	flex-direction: row-reverse;
}
.reason ul li:last-child {
	margin-bottom: 0;
}
.reason ul li .main {
	width: 70%;
}
.reason ul li .thumb {
	width: 30%;
	padding: 10px;
}
.reason ul li .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.reason h3 {
	background: none;
	margin: 0 0 15px;
	padding-bottom: 0;
}

/* system */
.system-main {
	border: 1px solid var(--accent-color);
	padding: 10px;
}
.system-main .fee {
	display: flex;
	background: var(--base-color);
	margin-bottom: 10px;
}
.system-main .fee .title {
	background: var(--accent-color);
	color: #ffffff;
	font-size: 1.2rem;
	position: relative;
	padding: 10px 20px;
	margin-right: 2em;
}
.system-main .fee .title:after {
	position: absolute;
	content: "";
	height: 100%;
	aspect-ratio: cos(60deg);
	clip-path: polygon(0 0,100% 50%,0 100%);
	background: var(--accent-color);
	top: 0;
	right: -31px;
}
.system-main .fee .title i {
	margin-right: 0.5rem;
}
.system-main .fee .title .big {
	font-size: 1.8rem;
	dont-weight: 600;
}
.system-main .fee .inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.system-main .fee .inner .sub-title {
	color: var(--accent-color);
	border: 1px solid var(--main-color);
	padding: 0 5px;
	margin-right: 0.5rem;
}
.system-main .fee .inner .big {
	font-size: 2rem;
	color: var(--main-color);
	font-weight: 600;
	letter-spacing: 0.2rem;
	margin-right: 0.5rem;
}
.system-main .fee .inner small {
	font-size: 1rem;
}
.system-main .info {
	display: flex;
	margin-bottom: 10px;
}
.system-main .info li {
	width: 50%;
	border: 1px solid var(--main-color);
	color: var(--main-color);
	padding: 10px 20px;
}
.system-main .info li span {
	width: 50%;
	display: inline-block;
	text-align: center;
	background: var(--secondary-color);
}
.system-main .info li .title {
	background: #fff;
}
.system-main .info li span:not(.title) {
	font-size: 1.5rem;
	font-weight: 600;
}
.system-main .message {
	background: var(--secondary-color);
	padding: 10px;
}
.system-main .message p {
	line-height: 1.8;
}


/* shop message */
.shop-message .content {
	display: flex;
	margin-bottom: 20px;
}
.shop-message .content:nth-of-type(2n) {
	flex-direction: row-reverse;
}
.shop-message .content .arrow_box {
	margin-left: 20px;
	padding: 10px;
	border-radius: 10px;
	position: relative;
	background: var(--base-color);
	flex-grow: 2;
}
.shop-message .content:nth-of-type(2n) .arrow_box {
	margin-left: 0;
	margin-right: 20px;
}
.shop-message .content .arrow_box:after {
	top: 70px;
	content: "";
	position: absolute;
	left: -20px;
	background: var(--base-color);
	width: 50px;
	height: 50px;
	clip-path: polygon(0 10px, 20px 0, 20px 20px);
}
.shop-message .content:nth-of-type(2n) .arrow_box:after {
	left: unset;
	right: -20px;
	clip-path: polygon(30px 0, 30px 20px, 50px 10px);
}
.shop-message p.name {
	margin-bottom: 10px;
	color: var(--main-color);
}



/* beginner */

.rows {
	display: flex;
	flex-direction: row;
}
.rows > .row {
}
.beginner .message {
	border: solid 1px var(--main-color);
	padding: 20px;
	margin-bottom: 30px;
}
.beginner .message .pop {
	font-size: 2rem;
	color: #019501;
	leter-spacing: 0.2em;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
}
.beginner .message .rows {
	justify-content: space-between;
	align-items: stretch;
	margin-top: 20px;
}
.beginner .message .rows:nth-of-type(2n) {
	flex-direction: row-reverse;
}
.beginner .message .thumb {
	width: 25%;
	max-height: 360px;
}
.beginner .message .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.beginner .message .body {
	width: 73%;
}
.beginner .message h3 {
	background: none;
	margin: 20px 0 10px;
	padding-bottom: 0;
	color: #f5598d;
	font-size: 21px;
}
.beginner .safety {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.beginner .safety li {
	width: calc((100% - 20px) / 3);
}
.beginner .safety li .thumb {
	width: 100%;
	height: 160px;
}
.beginner .safety li .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.beginner .safety li h4 {
	color: var(--main-color);
	margin: 15px 0 10px;
	font-size: 1.2rem;
}


/* FAQ */

.faq .index {
	border: solid 1px var(--main-color);
	padding: 10px 30px;
	background: var(--accent-color);
}
.faq .index > p {
	color: #ffffff;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	margin-bottom: 15px;
}
.faq .index .rows {
	justify-content: space-around;
}
.faq .index .thumb {
	width: 20%;
	position: relative;
	bottom: -10px;
}
.faq .index .thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.faq .index ul {
	max-width: 80%;
	letter-spacing: -0.4em;
	margin-bottom: 20px;
}
.faq .index li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0 10px 5px 0;
}
.faq .index li a {
    line-height: 36px;
	width: 275px;
    background: #fff;
    display: block;
    border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    text-align: center;
	border: solid 1px var(--main-color);
}
.faq .index li a:hover {
    background: var(--main-color);
	border: solid 1px #fff;
	color: #fff;
}

.faq .index li:last-child {
	margin-right: 0;
}
.faq h3 {
	padding-top: 30px;
}
.faq dt {
	margin-bottom: 15px;
	padding-left: 4em;
	color: var(--main-color);
	font-size: 1.1rem;
	position: relative;
	cursor: pointer;
	padding-top: 15px;
}
.faq dt:before {
	content: 'Q.';
	width: 2em;
	font-size: 2em;
	text-align: center;
	position: absolute;
	top: -2px;
	left:0;
}
.faq dt:hover {
	background: var(--base-color);
	transition: 0.5s;
}

.faq dd {
	display: none;
	margin-bottom: 20px;
	padding-bottom: 10px;
	padding-left: 4em;
	border-bottom: dashed 1px #999;
	font-size: 16px;
	position: relative;
	min-height: 40px;
}
.faq dd:before {
	content: 'A.';
	width: 2em;
	font-size: 2em;
	text-align:center;
	position: absolute;
	top: -2px;
	left: 0;
	color: #666;
}
.contactArea {
	border: dashed 2px #f8aac4;
	padding: 20px;
	margin-top: 30px;
	margin-bottom: 30px;
}
.contactArea h3 {
	padding-top: 0;
}
.contactArea input[type="reset"], .contactArea  input[type="submit"], .contactArea  input[type="button"] {
	margin: 15px 5px 0 !important;
}


/* salary */

.salary > .message {
	border: solid 1px var(--main-color);
	padding: 20px;
	margin-bottom: 30px;
}
.salary > .message .thumb {
	width: 20%;
	margin-left: 1rem;
}
.salary > .message .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.salary > .message .title {
	font-family: "Kaisei Tokumin", serif;
	font-weight: 400;
	font-size: 1.8rem;
	color: var(--main-color);
}
.salary > .message span {
	font-weight: bold;
	color: #f5598d;
}
.salary .secondary-title {
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--main-color);
}



/* count */

.contact span {
	margin-left: 5px;
	color: var(--main-color);
}
.contact table {
	width: 100%;
	margin-top: 20px;
}
.contact table th {
	background: #ffecf3;
	font-weight: normal;
	text-align: center;
	width: 140px;
	padding: 5px;
	border: 1px solid #f8aac4;
}
.contact table td {
	padding: 5px 15px;
	border: 1px solid #f8aac4;
}
form input[type=text] {
	width: 100%;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
	padding: 5px 10px;
}
form select {
	padding: 5px 10px;
}
form textarea {
    height: 60px;
	width: 100%;
	-moz-box-sizing: border-box;
    box-sizing: border-box;
	padding: 5px 10px;
}
input[type="reset"], input[type="submit"], input[type="button"] {
	display: inline-block;
	margin: 30px 5px;
	padding: 10px 15px;
	border: 1px solid var(--accent-color);
	color: #666;
	font-family: "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", "Yu Gothic", YuGothic, "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", "Meiryo", sans-serif;
	font-size: 16px;
	text-decoration: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-shadow: inset 1px 1px 0px 0px #ffffff;
	-moz-box-shadow: inset 1px 1px 0px 0px #ffffff;
	box-shadow: inset 1px 1px 0px 0px #ffffff;
	background: #ffffff;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #ffffff), color-stop(0.50, #f6f6f6), color-stop(0.51, #eeeeee), color-stop(0.00, #e6e6e6));
	background: -webkit-linear-gradient(top, #ffffff 0%, #f6f6f6 50%, #eeeeee 51%, #e6e6e6 100%);
	background: -moz-linear-gradient(top, #ffffff 0%, #f6f6f6 50%, #eeeeee 51%, #e6e6e6 100%);
	background: -ms-linear-gradient(top, #ffffff 0%, #f6f6f6 50%, #eeeeee 51%, #e6e6e6 100%);
	background: -o-linear-gradient(top, #ffffff 0%, #f6f6f6 50%, #eeeeee 51%, #e6e6e6 100%);
	background: linear-gradient(top, #ffffff 0%, #f6f6f6 50%, #eeeeee 51%, #e6e6e6 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee');
    cursor: pointer;
	width: 600px;
}


.count #box {
	border: solid 1px var(--main-color);
	padding: 20px 20px 30px;
	margin-bottom: 30px;
	position: relative;
}
.count #box:before {
	content: ' ';
	background-color: var(--accent-color);
	clip-path: polygon(0 0,100% 0, 50% 100%);
    width: 100px;
    height: 30px;
    position: absolute;
    bottom: -20px;
    margin: auto;
    left: 0;
    right: 0;
}
.count #box:after {
	content: ' ';
	background-color: var(--main-color);
	clip-path: polygon(0 0,100% 0, 50% 100%);
    width: 100px;
    height: 30px;
    position: absolute;
    bottom: -35px;
    margin: auto;
    left: 0;
    right: 0;
}
.count #box ul {
	letter-spacing: -0.4em;
	text-align: center;
}
.count #box ul li {
	letter-spacing: normal;
	display: inline-block;
	padding: 0 15px;
    vertical-align: middle;
}
.count #box ul li input[type="text"] {
    width: 160px !important;
}
.count #box ul li input[type="submit"] {
    margin: 0px;
    padding: 11px 15px;
    width: 100px;
}
.count .answer {
	border: solid 2px var(--main-color);
	background: var(--accent-color);
	padding: 10px;
	text-align: center;
	border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    color: #ffffff;
}
.count .answer span {
	font-size: 1.5rem;
    font-weight: bold;
	color: #ffffff;
}

/* voice */

.voice-top {
	border: 1px solid var(--main-color);
	margin-bottom: 20px;
	padding: 10px;
}
.voice-top p {
	font-family: "Kaisei Tokumin", serif;
	font-weight: 400;
	font-size: 1.5rem;
	color: var(--main-color);
	width: 70%;
	margin: 20px;
}
.voice-top .thumb {
	width: 30%;
}
.voice-top .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.voice .case {
	margin-bottom: 50px;
	border: solid 1px var(--main-color);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding: 20px 20px 15px;
	position: relative;
}
.voice h3 {
	background: none;
	font-size: 24px;
    margin: 0 0 15px;
    padding: 0;
    color: var(--main-color);
    vertical-align: top;
}
.voice .case .rows {
	justify-content: space-between;
}
.voice .case .rows .thumb {
	width: 20%;
}
.voice .case .rows .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
	border: 3px soild var(--main-color);
}
.voice .status {
	background: none;
	font-size: 18px;
    position: relative;
    margin: 0;
    padding: 0;
    display: inline-block;
    vertical-align: top;
}
.voice .arrow_box {
	position: relative;
	background: var(--base-color);
	padding: 10px 15px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
    width: calc(100% - 15px);
	box-sizing: border-box;
	margin-left: 15px;
}
.voice .arrow_box:after {
	top: 45px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	right: 100%;
	border-color: rgba(255, 255, 255, 0);
	border-width: 15px;
	margin-top: -25px;
	border-right-color: var(--base-color);
}
.voice .salary span {
	color: var(--main-color);
	font-size: 27px;
}
.voice h3 span {
    display: block;
    width: 40px;
    height: 40px;
    background: var(--accent-color);
    color: #fff;
    font-size: 16px;
    text-align: center;
    line-height: 40px;
    position: absolute;
    top: 20px;
    right: 20px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transform: rotate(20deg);
    -moz-transform: rotate(20deg);
    -ms-transform: rotate(20deg);
    -o-transform: rotate(20deg);
    transform: rotate(20deg);
    -webkit-animation: blink 0.6s infinite alternate;
    animation: blink 0.6s infinite alternate;
}
.voice2 .voice-content {
	margin-bottom: 50px;
	border: solid 1px var(--main-color);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding: 20px 20px 15px;
	position: relative;
}
.voice2 .voice-content .name {
	color: var(--main-color);
}
.privacy {
}
.privacy .rows {
	justify-content: space-between;
	margin-bottom: 30px;
}
.privacy .rows:first-of-type div.row {
	width: 33%;
}
.privacy .rows:first-of-type div.row p {
	font-size: 2rem;
	font-weight: 600;
	color: var(--main-color);
}
.privacy .rows:first-of-type ul.row {
	width: 67%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.privacy .rows:first-of-type ul.row li {
	width: calc(50% - 4px);
	margin-bottom: 4px;
}
.privacy .rows:last-of-type {
	flex-direction: row-reverse;
}
.privacy .rows:last-of-type .row.arrow_box {
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--main-color);
}
@-webkit-keyframes blink {
	0%   {opacity:0;}
	50%  {opacity:0;}
	51%  {opacity:1;}
	100% {opacity:1;}
}
@keyframes blink {
	0%   {opacity:0;}
	50%  {opacity:0;}
	51%  {opacity:1;}
	100% {opacity:1;}
}


/* shop */

.shop {}
.shop p span {
	margin-bottom: 5px;
}
.shop p span {
    color: var(--main-color);
}
.shop table {
	width: 100%;
	margin-top: 20px;
}
.shop table th {
	background: var(--base-color);
	font-weight: normal;
	text-align: center;
	width: 100px;
	padding: 5px;
	border: 1px solid var(--main-color);
}
.shop table td {
	padding: 5px 15px;
	border: 1px solid var(--main-color);
}


/* treatment */

.treatment {}
.treatment table {
	width: 100%;
	margin-bottom: 10px;
}
.treatment table th {
	background: #ffecf3;
	font-weight: normal;
	text-align: center;
	width: 80px;
	padding: 5px;
	border: 1px solid #f8aac4;
}
.treatment table td {
	padding: 5px 15px;
	border: 1px solid #f8aac4;
}



/* breadcrumbs */

nav#breadcrumbs {
}
nav#breadcrumbs ul {
	width: 1090px;
	margin: 0 auto;
	padding-top: 10px;
}
nav#breadcrumbs ul li {
	display: inline;
	list-style-type: none;
	font-size: 14px;
}
nav#breadcrumbs ul li:before {
	content: " > ";
}
nav#breadcrumbs ul li:first-child:before {
	content:"";
}
nav#breadcrumbs ul li a {
	text-decoration: none;
}


/* simulation/count */

.count h3,
.simulation h3 {
    font-weight: bold;
}
.count .midasi {
	color: var(--main-color);
	font-size: 16px;
	margin-bottom: 10px;
}
form {
	margin-bottom: 40px;
}


.migrant-worker .message {
	border: solid 1px var(--main-color);
	padding: 20px;
	margin-bottom: 30px;
}
.migrant-worker .message .pop {
	font-size: 2rem;
	color: #019501;
	leter-spacing: 0.2em;
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
}
.migrant-worker .message .treatment {
	margin-bottom: 30px;
}
.migrant-worker .message .treatment ul {
	display: flex;
	text-align: center;
	justify-content: space-around;
	flex-wrap: wrap;
}

.migrant-worker .message .treatment ul li {
	border: solid 1px var(--main-color);
	width: calc((100% - 10px) / 3);
	letter-spacing: normal;
	padding: 10px;
	margin-top: 10px;
	box-sizing: border-box;
	border-radius: 5px;
	font-size: 1.2rem;
	color: var(--main-color);
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	letter-spacing: -0.1em;
}

.flow-content {
	border: solid 1px var(--main-color);
	padding: 10px;
	margin-bottom: 15px;
}
.flow-content .title {
	position: relative;
}
.flow-content h4 {
	color: var(--main-color);
	font-family: "Kaisei Tokumin", serif;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-left: 100px;
	font-size: 1.2em;
}
.flow-content .step {
	position: absolute;
	left: 0;
	top: -12px;
	width: 90px;
	box-sizing: border-box;
	padding: 5px 10px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	background: var(--main-color);
	border-radius: 5px 5px 0 0;
	line-height: 125%;
	margin: 0;
}
.flow-content .step::after {
	content: ' ';
	width: 0;
	height: 0;
	border-left: 45px solid transparent;
	border-right: 45px solid transparent;
	border-top: 20px solid var(--main-color);
	position: absolute;
	bottom: -20px;
	left: 0;
}
.flow-content .step span {
	display: block;
	font-size: 0.8em;
	font-weight: 300;
}
.flow-content .body {
	margin-left: 100px;
}