/*
Theme Name: 
Theme URI: 
Author: yuki
Author URI: 
Description: 
Version: 1.0
*/


/* --------------------------------------- */
@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);


/* --------------------------------------- *
	01:Reset CSS
 * --------------------------------------- */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small,
strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label,
legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside,
canvas, details, figcaption, figure, footer, header, hgroup, menu, nav,
section, summary, time, mark, audio, video {
	margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    font-weight: normal;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
    line-height: 1
}
article, aside, details, figcaption, figure, footer, header, hgroup,
menu, nav, section {
    display: block;
}
ul, ol {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: none
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}
input, select {
    vertical-align: middle;
}
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
 	appearance: none;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}



/* --------------------------------------- *
	02:Common
 * --------------------------------------- */
html {
	font-size: 62.5%; /* 10px */
}
body {
	color: #333;
	font-family: Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo, sans-serif;
	line-height: 1.6;
	text-align: center;
}
/*@media only screen and (max-width: 780px) {
	.spNone { display: none; }
}
@media only screen and (min-width: 781px) {
	.pcNone { display: none; }
}*/
img {
    max-width: 100%;
    width /***/: auto;
    height: auto;
    vertical-align: bottom;
}
p {
	text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
}

/* 余白 */
@media screen and (max-width: 968px) {
	.wrap {
		padding: 0 1.6rem 0;
	}
}
@media screen and (max-width: 768px) {
	.spNone {
		display: none;
	}
}
@media screen and (min-width: 769px) {
	.pcNone {
		display: none;
	}
}
.mt3 { margin-top: 3rem; }
.mt4 { margin-top: 4rem; }
.mt5 { margin-top: 5rem; }
.mt6 { margin-top: 6rem; }
.mt7 { margin-top: 7rem; }
.mt8 { margin-top: 8rem; }
.mt9 { margin-top: 9rem; }
.mt10 { margin-top: 10rem; }
.mb3 { margin-bottom: 3rem; }
.mb4 { margin-bottom: 4rem; }
.mb5 { margin-bottom: 5rem; }
.mb6 { margin-bottom: 6rem; }
.mb7 { margin-bottom: 7rem; }
.mb8 { margin-bottom: 8rem; }
.mb9 { margin-bottom: 9rem; }
.mb10 { margin-bottom: 10rem; }
.pt3 { padding-top: 3rem; }
.pt4 { padding-top: 4rem; }
.pt5 { padding-top: 5rem; }
.pt6 { padding-top: 6rem; }
.pt7 { padding-top: 7rem; }
.pt8 { padding-top: 8rem; }
.pt9 { padding-top: 9rem; }
.pt10 { padding-top: 10rem; }
.pb3 { padding-bottom: 3rem; }
.pb4 { padding-bottom: 4rem; }
.pb5 { padding-bottom: 5rem; }
.pb6 { padding-bottom: 6rem; }
.pb7 { padding-bottom: 7rem; }
.pb8 { padding-bottom: 8rem; }
.pb9 { padding-bottom: 9rem; }
.pb10 { padding-bottom: 10rem; }
@media screen and (max-width: 768px) {
	.mt3 { margin-top: 1.5rem; }
	.mt4 { margin-top: 2rem; }
	.mt5 { margin-top: 2.5rem; }
	.mt6 { margin-top: 3rem; }
	.mt7 { margin-top: 3.5rem; }
	.mt8 { margin-top: 4rem; }
	.mt9 { margin-top: 4.5rem; }
	.mt10 { margin-top: 5rem; }
	.mb3 { margin-bottom: 1.5rem; }
	.mb4 { margin-bottom: 2rem; }
	.mb5 { margin-bottom: 2.5rem; }
	.mb6 { margin-bottom: 3rem; }
	.mb7 { margin-bottom: 3.5rem; }
	.mb8 { margin-bottom: 4rem; }
	.mb9 { margin-bottom: 4.5rem; }
	.mb10 { margin-bottom: 5rem; }
	.pt3 { padding-top: 1.5rem; }
	.pt4 { padding-top: 2rem; }
	.pt5 { padding-top: 2.5rem; }
	.pt6 { padding-top: 3rem; }
	.pt7 { padding-top: 3.5rem; }
	.pt8 { padding-top: 4rem; }
	.pt9 { padding-top: 4.5rem; }
	.pt10 { padding-top: 5rem; }
	.pb3 { padding-bottom: 1.5rem; }
	.pb4 { padding-bottom: 2rem; }
	.pb5 { padding-bottom: 2.5rem; }
	.pb6 { padding-bottom: 3rem; }
	.pb7 { padding-bottom: 3.5rem; }
	.pb8 { padding-bottom: 4rem; }
	.pb9 { padding-bottom: 4.5rem; }
	.pb10 { padding-bottom: 5rem; }
}

/* 文字位置 */
.txtL { text-align: left; }
.txtC { text-align: center; }
.txtR { text-align: right; }

/* リンク */
a {
    color: #503d32;
	text-decoration: none;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}
a:hover {
	text-decoration: none;
}


/* --------------------------------------- *
	03:Header & MainMenu
 * --------------------------------------- */
header {
	position: relative;
}
@media screen and (min-width: 769px) {
	.drawer-container {
		display: flex;
		justify-content: flex-start;
		flex-direction: column;
		position: relative;
		/*padding: 1.6rem;*/
		width: 100%;
		height: 170px;
		background-color: #fff;
		z-index: 999;
	}
	.drawer-container.fixed {
		position: fixed;
		top: 0;
	}
	.header-wrap {
		padding: 1.6rem;
	}
	.drawer-navbar-header {
		display: flex;
		align-items: center;
		margin: 0 auto;
		width: 100%;
		max-width: 96rem;
	}
	.drawer-navbar-header .headCopy {
		margin-left: 1.6rem;
		font-size: 1.6rem;
		font-weight: 600;
		text-align: left;
	}
	.drawer-navbar-header .headImg {
		margin-left: auto;
	}
	.drawer-navbar-header h1 span {
		display: none;
	}
	.drawer-brand img {
		width: auto;
	}
	.drawer-navbar .drawer-hamburger {
    	display: none;
	}
	.gNav {
		background-color: #ffbf00;
	}
	.gNav > ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		box-sizing: border-box;
		margin: 0 auto;
		width: 100%;
		max-width: 82rem;
		font-size: 1.6rem;
		font-family: "メイリオ", Meiryo, sans-serif;
	}
	.gNav > ul > li {
		flex-grow: 1;
		position: relative;
	}
	.gNav > ul > li a {
		display: block;
		padding: 1.2rem 0;
	}
	.gNav > ul > li a:hover {
		background-color: #fff;
	}
}


/* --------------------------------------- *
	04:footer
 * --------------------------------------- */
footer {
	background-color: #eff4f7;
}
@media screen and (min-width: 769px) {
	footer .footerNav {
		padding: 1.2rem 0;
		background-color: #ffbf00;
	}
	footer .footerNav ul {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		margin: 0 auto;
		width: 100%;
		max-width: 82rem;
		font-size: 1.4rem;
		list-style-type: none;
	}
	footer .footerNav ul li {
		display: inline-block;
		color: #000;
	}
	footer .footerNav ul li::before,
	footer .footerNav ul li:last-child::after {
		content: "｜";
		color: #000;
	}
	footer .footerNav ul li a {
		padding: 0 .6rem;
		color: #000;
		text-decoration: none;
	}
	footer .footerInfo {
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
		padding: 0 1.6rem;
		width: 100%;
		max-width: 88rem;
	}
	footer .footerInfo dl {
		margin: 2.4rem 0;
		width: 40rem;
		text-align: left;
	}
	footer .footerInfo dl dt {
		padding-bottom: .8rem;
		border-bottom: .1rem solid #b7d3e4;
		font-size: 1.6rem;
	}
	footer .footerInfo dl dd {
		padding-top: .8rem;
	}
	footer .footerInfo dl dd.b {
		font-size: 2rem;
	}
	footer .footerInfo dl dd.s {
		display: flex;
		align-items: center;
		font-size: 1.4rem;
	}
	footer .footerInfo dl dd.s > div {
		margin-right: 1.2rem;
	}
	footer .footerInfo dl dd.n {
		align-items: center;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 768px) {
	footer .footerNav {
		background-color: #ffbf00;
	}
	footer .footerNav ul {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		font-size: 1.4rem;
		list-style-type: none;
	}
	footer .footerNav ul li {
		width: 50%;
	}
	footer .footerNav ul li:nth-child(odd) {
		border-right: .1rem solid #eff4f7;
		border-bottom: .1rem solid #eff4f7;
	}
	footer .footerNav ul li:nth-child(even) {
		border-bottom: .1rem solid #eff4f7;
	}
	footer .footerNav ul li a {
		display: block;
		padding: 16px 0;
	}
	footer .footerInfo {
		display: flex;
		flex-direction: column;
		margin: 0 auto;
		padding: 0 1.6rem;
		width: 100%;
	}
	footer .footerInfo dl {
		margin: 2.4rem 0;
	}
	footer .footerInfo dl dt {
		padding-bottom: .8rem;
		border-bottom: .1rem solid #b7d3e4;
		font-size: 1.6rem;
		font-weight: 600;
	}
	footer .footerInfo dl dd {
		padding-top: .8rem;
	}
	footer .footerInfo dl dd.b {
		font-size: 1.8rem;
	}
	footer .footerInfo dl dd.s {
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 1.4rem;
	}
	footer .footerInfo dl dd.s > div {
		margin-right: 1.2rem;
	}
	footer .footerInfo dl dd.s > p {
		text-align: left;
	}
}


/* --------------------------------------- *
	05:Top
 * --------------------------------------- */
#branding {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	width: 100%;
	height: 100vh;
	background-color: #ffbf00;
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	overflow: hidden;
	position: relative;
	z-index: 999999;
}
#branding .headImg {
	margin-top: 1.6rem;
	text-align: right;
}
#branding .headCopy {
	margin: 0 auto;
	width: 100%;
	max-width: 96rem;
}
#branding nav.top {
	/*margin-top: auto;*/
	width: 100%;
	background-color: #ffbf00;
}
#branding nav.top ul {
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
	margin: 0 auto;
	width: 100%;
	max-width: 82rem;
	font-size: 1.6rem;
	font-family: "メイリオ", Meiryo, sans-serif;
}
#branding nav.top ul li {
	flex-grow: 1;
}
#branding nav.top ul li a {
	display: block;
	padding: 1.2rem 0;
}
#branding nav.top ul li a:hover {
	background-color: #fff;
}
@media screen and (min-width: 769px) {
	#branding {
		background-image: url("../images/top/bg_top_pc.png");
	}
	#branding .mainVisual {
		padding-bottom: 6rem;
	}
	#branding .mainVisual p.headMainCatch {
		font-size: 3rem;
		font-weight: 800;
		text-align: center;
	}
	#branding .mainImg {
		display: flex;
		justify-content: center;
		margin-top: 4rem;
	}
	#branding .mainImg_logo {
		order: 2;
	}
	#branding .mainImg_chara1 {
		order: 1;
	}
	#branding .mainImg_chara2 {
		order: 3;
	}
	#branding .mainImg p.headSubCatch {
		font-size: 1.8rem;
		font-weight: 600;
	}
}
@media screen and (max-width: 768px) {
	#branding {
		background-image: url("../images/top/bg_top_sp.png");
		height: 90vh;
	}
	#branding .headCopy .headImg {
		margin-left: auto;
		width: 50%;
	}
	#branding .headCopy .headImg img {
		width: 50%;
	}
	#branding .mainVisual p.headMainCatch {
		font-size: 4vw;
		font-weight: 800;
		text-align: center;
	}
	#branding .mainImg {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	#branding .mainImg_logo {
		width: 100%;
	}
	#branding .mainImg_logo img {
		width: 50%;
	}
	#branding .mainImg_chara3 img {
		width: 80%;
	}
	#branding .mainImg p.headSubCatch {
		margin-bottom: 3rem;
		font-size: 3.2vw;
		font-weight: 600;
	}
	#branding nav.top ul {
		font-size: 1rem;
	}
}
@media (min-width: 540px) and (max-width: 768px) {
	#branding .mainVisual p.headMainCatch {
		font-size: 3.5vw;
	}
	#branding .mainImg p.headSubCatch {
		font-size: 3vw;
	}
	#branding .headCopy .headImg {
		margin-left: auto;
		width: 40%;
	}
	#branding .headCopy .headImg img {
		width: 40%;
	}
	#branding .mainImg_logo {
		margin: 0 auto;
		width: 100%;
	}
	#branding .mainImg_logo img {
		width: 40%;
	}
	#branding .mainImg_chara3 img {
		width: 60%;
	}
}
/*--トップコンテンツ--*/
#topContents {
	margin-top: 20rem;
	font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
	#topContents {
		margin-top: 10rem;
	}
}
#topContents .inner {
	margin: 0 auto;
	width: 100%;
	max-width: 96rem;
}
#topContents section button {
	margin-top: 2.4rem;
	background-color: #24d562;
	border-radius: 5rem;
	font-size: 2.4rem;
	color: #fff;
	font-weight: 800;
}
#topContents section button a {
	display: block;
	padding: 2.4rem 10rem;
	color: #fff;
}
@media screen and (max-width: 768px) {
	#topContents section button {
		width: 100%;
	}
	#topContents section button a {
		display: block;
		padding: 2.4rem 0;
	}
}
/*sec1*/
#topContents section.sec1 {
	padding-top: 3rem;
	padding-bottom: 5rem;
}
#topContents section.sec1 h2 {
	font-size: 3.2rem;
	font-weight: 700;
}
#topContents section.sec1 h2 span {
	font-size: 4.2rem;
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec1 div.img {
	display: flex;
	align-items: center;
}
#topContents section.sec1 div.img div.img4 {
	flex: none;
	margin-left: auto;
}
#topContents section.sec1 div.img div.img_in {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	margin-right: 1%;
}
#topContents section.sec1 div.img div.img_in div {
	margin-right: 10px;
}
#topContents section.sec1 p {
	margin-top: 2.4rem;
}
#topContents section.sec1 .subTtl {
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
}
#topContents section.sec1 p em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
#topContents section.sec1 .registered {
	font-size: 1.4rem;
	text-align: right;
}
@media screen and (max-width: 768px) {
	#topContents section.sec1 h2 {
		font-size: 6vw
	}
	#topContents section.sec1 h2 span {
		display: block;
		font-size: 8vw;
	}
	#topContents section.sec1 div.img {
		position: relative;
		margin-top: 2.4rem;
		width: 100%;
	}
	#topContents section.sec1 div.img {}
	#topContents section.sec1 div.img div.img1 {
		position: absolute;
		top: 0;
		left: 0;
		width: 30%;
		z-index: 10;
	}
	#topContents section.sec1 div.img div.img2 {
		position: absolute;
		top: 0;
		left: 40%;
		width: 30%;
		z-index: 10;
	}
	#topContents section.sec1 div.img div.img3 {
		position: absolute;
		top: 45%;
		left: 20%;
		width: 30%;
		z-index: 10;
	}
	#topContents section.sec1 div.img div.img4 {
		position: absolute;
		bottom: 0;
		right: 0;
		width: 50%;
	}
}
@media screen and (min-width: 540px) and (max-width: 768px) {
	#topContents section.sec1 div.img {
		height: 31rem;
	}
}
@media screen and (min-width: 480px) and (max-width: 539px) {
	#topContents section.sec1 div.img {
		height: 25rem;
	}
}
@media screen and (min-width: 384px) and (max-width: 479px) {
	#topContents section.sec1 div.img {
		height: 22rem;
	}
}
@media screen and (min-width: 321px) and (max-width: 383px) {
	#topContents section.sec1 div.img {
		height: 20rem;
	}
}
@media screen and (min-width: 241px) and (max-width: 320px) {
	#topContents section.sec1 div.img {
		height: 17rem;
	}
}
@media screen and (max-width: 240px) {
	#topContents section.sec1 div.img {
		height: 13rem;
	}
}
@media screen and (min-width: 412px) and (max-width: 539px) {
	#topContents section.sec1 div.img div.img4 {
		width: 45%;
	}
}
/*sec2*/
#topContents section.sec2 {
	padding-top: 5rem;
	padding-bottom: 5rem;
}
#topContents section.sec2 h2 {
	font-size: 3.2rem;
	font-weight: 700;
}
#topContents section.sec2 h2 span {
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec2 ul {
	display: flex;
	justify-content: space-between;
	margin: 2.4rem auto;
}
#topContents section.sec2 ul li {
	flex: 1;
	display: flex;
	flex-direction: column;
}
#topContents section.sec2 ul li p {
	margin: 1.2rem auto;
	padding: 0 1rem;
}
#topContents section.sec2 ul li .ill {
	margin-top: auto;
}
#topContents section.sec2 .img {
	margin-bottom: 2.4rem;
}
#topContents section.sec2 h3 {
	margin-bottom: 1.6rem;
	font-size: 3.2rem;
	font-weight: 700;
}
#topContents section.sec2 .box {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
#topContents section.sec2 .box .img {
	flex: none;
	margin-left: 2.4rem;
}
#topContents section.sec2 .box p {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec2 .box p em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
@media screen and (max-width: 768px) {
	#topContents section.sec2 h2,
	#topContents section.sec2 h3 {
		font-size: 4.2vw;
	}
	#topContents section.sec2 ul {
		flex-wrap: wrap;
		justify-content: space-around;
		width: 100%;
	}
	#topContents section.sec2 ul li {
		flex: none;
		width: 50%;
	}
	#topContents section.sec2 .box {
		flex-direction: column;
	}
}
/*sec3*/
#topContents section.sec3 {
	padding-top: 5rem;
	padding-bottom: 5rem;
	background-color: #f8f7e7;
}
#topContents section.sec3 p {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec3 .ttl {
	display: flex;
	align-items: center;
	align-content: center;
	width: 100%;
}
#topContents section.sec3 .ttl h2 {
	margin: 0 auto;
	font-size: 4.2rem;
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec3 .subTtl {
	margin-top: 0;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
}
#topContents section.sec3 .box1 {
	display: flex;
	align-items: center;
}
#topContents section.sec3 .box1 .img {
	flex: none;
	margin-right: 2.4rem;
}
#topContents section.sec3 .box2 {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
#topContents section.sec3 .box2 .img {
	flex: none;
	margin-left: 2.4rem;
}
#topContents section.sec3 .box1 p,
#topContents section.sec3 .box2 .boxTxt {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec3 h3 {
	font-size: 3rem;
	color: #1d2088;
	font-weight: 600;
}
#topContents section.sec3 em,
#topContents section.sec3 .box2 .boxTxt em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
#topContents section.sec3 .box2 .boxTxt ul {
	margin-left: 5rem;
	list-style-type: disc;
}
#topContents section.sec3 .box2 .boxTxt ul li {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
#topContents section.sec3 .requestTxt {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 2rem;
	font-weight: 600;
	text-align: center;
}
#topContents section.sec3 .box2 .boxTxt .registered {
	font-size: 1.4rem;
	text-align: right;
}
@media screen and (max-width: 768px) {
	#topContents section.sec3 .ttl {
		flex-direction: column-reverse;
	}
	#topContents section.sec3 .ttl h2 {
		margin-top: 2.4rem;
		font-size: 6vw;
	}
	#topContents section.sec3 .subTtl {
		font-size: 4vw;
		text-align: center;
	}
	#topContents section.sec3 h3 {
		font-size: 4.5vw;
	}
	#topContents section.sec3 .box1 {
		flex-direction: column;
	}
	#topContents section.sec3 .box2 {
		flex-direction: column-reverse;
	}
	#topContents section.sec3 .box1 .img {
		margin-right: 0;
		width: 40%;
	}
	#topContents section.sec3 .box2 .img {
		margin-left: 0;
		width: 60%;
	}
}
/*sec4*/
#topContents section.sec4 {
	padding-top: 5rem;
	padding-bottom: 5rem;
}
#topContents section.sec4 p {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec4 .ttl {
	display: flex;
	align-items: center;
	align-content: center;
	width: 100%;
}
#topContents section.sec4 .ttl h2 {
	margin: 0 auto;
	font-size: 4.2rem;
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec4 .subTtl {
	margin-top: 0;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
}
#topContents section.sec4 .box {
	display: flex;
	align-items: center;
}
#topContents section.sec4 .box .img {
	flex: none;
	margin-right: 2.4rem;
}
#topContents section.sec4 h3 {
	font-size: 2.4rem;
	color: #1d2088;
	font-weight: 600;
}
#topContents section.sec4 .boxTxt em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
#topContents section.sec4 .waku {
	display: flex;
	align-items: center;
	margin-top: 2.4rem;
	margin-bottom: 6rem;
	padding: 1.4rem 2.4rem;
	background-color: #eff4f7;
	border: .2rem solid #cbcccc;
	border-radius: 1.2rem;
}
#topContents section.sec4 .waku h4 {
	padding: 0 6rem 0 4rem;
	font-size: 1.8rem;
	font-weight: 600;
	white-space: nowrap;
}
#topContents section.sec4 .registered {
	font-size: 1.4rem;
	text-align: right;
}
@media screen and (max-width: 768px) {
	#topContents section.sec4 .ttl {
		flex-direction: column-reverse;
	}
	#topContents section.sec4 .ttl h2 {
		margin-top: 2.4rem;
		font-size: 6vw;
	}
	#topContents section.sec4 .subTtl {
		font-size: 4vw;
		text-align: center;
	}
	#topContents section.sec4 h3 {
		font-size: 4.5vw;
	}
	#topContents section.sec4 .box {
		flex-direction: column;
	}
	#topContents section.sec4 .box .img {
		margin-right: 0;
		width: 60%;
	}
	#topContents section.sec4 .waku {
		flex-direction: column;
	}
}
#topContents section.sec4 hr {
	margin: 4rem auto 3.6rem;
}
#topContents section.sec4 .flow {
	display: flex;
	flex-wrap: wrap;
	margin-top: 3.6rem;
}
#topContents section.sec4 .flow li {
	margin-bottom: 2.4rem;
	width: 33%;
}
#topContents section.sec4 .flow li {
	background-image: url("../images/top/icon_arrow.png");
	background-repeat: no-repeat;
	background-position: 95% center;
}
#topContents section.sec4 .flow li:last-child {
	background-image: none;
}
#topContents section.sec4 .flow li .flowBox {
	padding: 1.6rem;
	border: .2rem solid #cbcccc;
	background-color: #fff;
	width: 80%;
}
#topContents section.sec4 .flow li .flowBox p span {
	font-size: 1.2rem;
}
#topContents section.sec4 em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
#topContents section.sec4 .requestTxt {
	margin-top: 4rem;
	margin-bottom: 0;
	font-size: 2rem;
	font-weight: 600;
	text-align: center;
}
@media screen and (max-width: 768px) {
	#topContents section.sec4 .flow li {
		width: 50%;
	}
	#topContents section.sec4 .flow li {
		background-position: 95% center;
		background-size: 10%;
	}
	#topContents section.sec4 .flow li .flowBox {
		font-size: 1.4rem;
	}
	#topContents section.sec4 .flow li .flowBox p span {
		font-size: 1rem;
	}
}
@media screen and (max-width: 320px) {
	#topContents section.sec4 .flow li {
		margin-bottom: 0;
		width: 100%;
	}
	#topContents section.sec4 .flow li:after {
		content: url("../images/top/icon_arrow2.png");
		background-image: none;
	}
	#topContents section.sec4 .flow li:last-child:after {
		content: none;
	}
	#topContents section.sec4 .flow li .flowBox { 
		width: 100%;
	}
}
/*sec5*/
#topContents section.sec5 {
	padding-top: 5rem;
	padding-bottom: 5rem;
	background-color: #f8f7e7;
}
#topContents section.sec5 p {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec5 .ttl {
	display: flex;
	align-items: center;
	align-content: center;
	width: 100%;
}
#topContents section.sec5 .ttl h2 {
	margin: 0 auto;
	font-size: 4.2rem;
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec5 .subTtl {
	margin-top: 0;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center;
}
#topContents section.sec5 .box1 {
	display: flex;
	align-items: center;
}
#topContents section.sec5 .box1 .img {
	flex: none;
	margin-right: 2.4rem;
}
#topContents section.sec5 .box2 {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
#topContents section.sec5 .box2 .img {
	flex: none;
	margin-left: 2.4rem;
}
#topContents section.sec5 .box2 .boxTxt {
	margin: 1.6rem auto;
	text-align: left;
}
#topContents section.sec5 h3 {
	font-size: 2.4rem;
	color: #1d2088;
	font-weight: 600;
}
#topContents section.sec5 .boxTxt em {
	color: #e54444;
	font-style: normal;
	font-weight: 600;
}
@media screen and (max-width: 768px) {
	#topContents section.sec5 .ttl {
		flex-direction: column-reverse;
	}
	#topContents section.sec5 .ttl h2 {
		margin-top: 2.4rem;
		font-size: 6vw;
	}
	#topContents section.sec5 .subTtl {
		font-size: 4vw;
		text-align: center;
	}
	#topContents section.sec5 h3 {
		font-size: 4.5vw;
	}
	#topContents section.sec5 .box1 {
		flex-direction: column;
	}
	#topContents section.sec5 .box2 {
		flex-direction: column-reverse;
	}
	#topContents section.sec5 .box1 .img {
		margin-right: 0;
		width: 40%;
	}
	#topContents section.sec5 .box2 .img {
		margin-left: 0;
		width: 60%;
	}
}
/*sec6*/
#topContents section.sec6 {
	margin: 0 auto;
	padding-top: 5rem;
	padding-bottom: 5rem;
	background-color: #f8f7e7;
	width: 100%;
	max-width: 96rem;
	border-radius: 3rem;
}
#topContents section.sec6 h2 {
	font-size: 2.4rem;
	color: #1d2088;
	font-weight: 700;
}
#topContents section.sec6 p {
	margin-top: 0;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center !important;
}
#topContents section.sec6 p em {
	color: #1d2088;
	font-style: normal;
	font-weight: 600;
}
@media screen and (max-width: 768px) {
	#topContents section.sec6 h2 {
		font-size: 4vw;
	}
}
/*ページ内リンク*/
@media screen and (max-width: 768px) {
	#topContents section.sec3 .ttl h2,
	#topContents section.sec4 .ttl h2,
	#topContents section.sec5 .ttl h2 {
		padding-top: 60px;
		margin-top: -40px;
	}
}
/* --------------------------------------- *
	06:Contents
 * --------------------------------------- */
#contents {
	margin-top: 20rem;
	font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
	#contents {
		margin-top: 10rem;
	}
}
#contents .inner {
	margin: 0 auto;
	width: 100%;
	max-width: 88rem;
}
#contents h2 {
	margin: 36px auto;
	font-size: 4rem;
	color: #1d2088;
	font-weight: 700;
}
#contents .subTtl {
	margin-top: 0;
	font-size: 2.4rem;
	font-weight: 600;
	text-align: center !important;
}
@media screen and (max-width: 768px) {
	#contents h2 {
		font-size: 6vw;
	}
}
#contents section button {
	margin-top: 2.4rem;
	background-color: #24d562;
	border-radius: 5rem;
	font-size: 2.4rem;
	color: #fff;
	font-weight: 800;
}
#contents section button a {
	display: block;
	padding: 2.4rem 10rem;
	color: #fff;
}
@media screen and (max-width: 768px) {
	#contents section button {
		width: 100%;
	}
	#contents section button a {
		display: block;
		padding: 2.4rem 0;
	}
}

/*----- About -----*/
#contents section.aboutSec1 {
	padding-top: 2rem;
	padding-bottom: 5rem;
}
#contents section.aboutSec2 {
	padding-top: 2rem;
	padding-bottom: 5rem;
	background-color: #f8f7e7;
}
#contents section.aboutSec1 .box {
	display: flex;
	align-items: center;
}
#contents section.aboutSec1 .box .img {
	flex: none;
	margin-right: 2.4rem;
}
#contents section.aboutSec1 p {
	margin: 1.6rem auto;
	text-align: left;
}
#contents section.aboutSec2 p {
	margin: 1.6rem auto;
	text-align: left;
}
@media screen and (max-width: 768px) {
	#contents section.aboutSec1 .box {
		flex-direction: column;
	}
	#contents section.aboutSec1 .box .img {
		margin-right: 0;
		width: 60%;
	}
}

/*----- CaseStudy -----*/
#contents section.case {
	padding-bottom: 6rem;
}
#contents section.bg1 {
	background-color: #f8f7e7;
	padding-top: 0.6rem;
}
#contents section.bg2 {
	background-color: #fff;
}
#contents section.case .caseNav {
	display: flex;
	justify-content: space-between;
	margin-top: 3.2rem;
	width: 100%;
	max-width: 82rem;
}
#contents section.case .caseNav li {
	padding-left: 1.2rem;
	background-image: url("../images/case/icon_arrow_d.png");
	background-repeat: no-repeat;
	background-position: 0 50%;
}
#contents section.case .caseNav li a {
	font-weight: 600;
	text-decoration: underline;
}
#contents section.case h3 {
	margin: 3rem auto;
	padding-bottom: .6rem;
	border-bottom: .1rem solid #cbcccc;
	font-size: 2.4rem;
	color: #1d2088;
	font-weight: 700;
}
#contents section.case .problem,
#contents section.case .solution {
	display: flex;
	align-items: center;
	padding: 3rem;
	border-radius: 2.4rem;
	text-align: left;
}
#contents section.case .problem .img,
#contents section.case .solution .img {
	flex: none;
	margin-right: 3rem;
}
#contents section.case .problem .problemTxt p {
	margin-bottom: 1.8rem;
	font-size: 2.4rem;	
}
#contents section.case .problem .problemTxt p em {
	font-weight: 700;
	font-style: normal;
}
#contents section.case .problem .problemTxt ul,
#contents section.case .solution ul {
	margin-left: 2.4rem;
	list-style-type: disc;
}
#contents section.case .solution ul li {
	font-size: 1.8rem;
	font-weight: 600;
}
#contents section.case .transactionList {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -2.4rem;
	width: 100%;
}
#contents section.case .transactionList li {
	margin-bottom: 2.4rem;
	width: 50%;
	text-align: left;
}
#contents section.case .transactionList li span {
	display: block;
	font-size: 1.4rem;
}
#contents section.bg1 .problem,
#contents section.bg1 .solution {
	background-color: #fff;
}
#contents section.bg2 .problem,
#contents section.bg2 .solution {
	background-color: #f8f7e7;
}
@media screen and (max-width: 768px) {
	#contents section.case .caseNav {
		flex-wrap: wrap;
		justify-content: center;
	}
	#contents section.case .caseNav {
		list-style-position: inside;
		list-style-image: url("../images/case/icon_arrow_d.png");
		text-align: left;
	}
	#contents section.case .caseNav li {
		width: 50%;
		background-image: none;
	}
	#contents section.case .problem,
	#contents section.case .solution {
		flex-direction: column;
	}
	#contents section.case .problem .img,
	#contents section.case .solution .img {
		flex: none;
		margin-right: 0;
		margin-bottom: 3rem;
	}
	#contents section.case .transactionList {
		flex-direction: column;
	}
	#contents section.case .transactionList li {
		width: 100%;
	}
}
/*スライダー*/
.sliderArea {
  max-width: 90%;
  margin: 0 auto;
}
.sliderArea a {
	display: block;
}
.sliderArea .voiceBox {
	background-color: #fff;
}
.sliderArea .voiceBox .voiceImg {
	background-color: #efefef;
}
.sliderArea .voiceBox .voiceArea {
	padding: 1.8rem;
	text-align: left;
}
.sliderArea .voiceBox .voiceArea .voiceName,
.sliderArea .voiceBox .voiceArea .voiceBody {
	font-size: 1.4rem;
}
.sliderArea .voiceBox .voiceArea .voiceTtl {
	margin: 1.2rem 0;
	font-size: 1.6rem;
	font-weight: 600;
}
.sliderArea .voiceBox .voiceArea .voiceIntro {
	margin-top: 1.2rem;
	font-size: 1.4rem;
}
.sliderArea .voiceBox .voiceArea .voiceIntro dt {
	font-weight: 600;
}
/*追加分start*/
.sliderArea .voiceBox .voiceArea .voiceInfo {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
.sliderArea .voiceBox .voiceArea .voiceInfo p {
	margin: 1.6rem auto;
	text-align: left;
}
.sliderArea .voiceBox .voiceArea .voiceInfo .voiceInfo2 p {
	margin-top: 0rem;
	margin-left: 1.0rem;
	text-align: left;
}
.sliderArea .voiceBox .voiceArea .voiceInfo .img {
	flex: none;
	margin-left: 1.0rem;
	align-items: right;
}
.sliderArea .voiceBox .voiceArea .voiceArea2 {
	text-align: left;
}
.sliderArea .voiceBox .voiceArea .voiceArea3 {
	text-align: left;
	display: flex;
}
.sliderArea .voiceBox .voiceArea dt {
	float: left;
	clear: left;
	margin-right: 0.5em;
	width: 120px;
}
.sliderArea .voiceBox .voiceArea dd {
	float: left;
	margin-left: 1em;
}
.sliderArea .voiceBox .voiceArea dd a {
	color:#0000ff;
	text-decoration:none;
	border-bottom:1px solid #0000ff;
}
/*追加分end*/


.next-arrow {
    position: absolute;
    top: 50%;
	right: -4rem;
    display: block;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 100;
}
.prev-arrow {
    position: absolute;
    top: 50%;
	left: -4rem;
    display: block;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
	z-index: 100;
}
.slick-slide {
  margin: 0 .6rem;
}
@media screen and (max-width: 768px) {
	.sliderArea {
	  max-width: 80%;
	  margin: 0 auto;
	}
}
/*----- Access -----*/
#contents section.access .photoImg {
	margin: 2.4rem auto 4.2rem;
}
#contents section.access .photoImg p {
	font-size: 1.2rem;
	text-align: left;
}
#contents section.access .line {
	border-top: 1px solid #cbcccc;
}
#contents section.access .googleMap {
	position: relative;
	margin: 2.4rem auto 6rem;
	padding-top: 56.25%;
	width: 100%;
	height: 0;
}
#contents section.access .googleMap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#contents section.access p a {
	color:#0000ff;
	text-decoration:none;
	border-bottom:1px solid #0000ff;
}
/*----- Contact -----*/
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea,
button {
	-moz-appearance: none;
	-webkit-appearance: none;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
	outline: none;
}
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
	padding: 1.2rem;
	border: .1rem solid #cbcccc;
	border-radius: .3rem;
	box-shadow: 0 0 .8rem .3rem rgba(0,0,0,.1)inset;
	font-size: 1.6rem;
}
textarea {
	padding: .5rem;
	width: 100%;
	height: 10rem;
}
select {
	width: 50%;
	background-image: url(../images/common/icon_arrow.png);
	background-repeat: no-repeat;
	background-position: right 1rem center;
}
input[type="text"],
input[type="email"],
input[type="tel"] {width: 100%; }
input[type="text"].w70,
input[type="email"].w70 { width: 70%; }
input[type="tel"].w50 { width: 50%; }
input[type="text"].w30 { width: 30%; }
input[type="text"].w20 { width: 20%; }
input[type="checkbox"] {
    display: none;
}
input[type="checkbox"] + label {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: .5rem 2.5rem;
    position: relative;
    width: auto;
}
input[type="checkbox"] + label::before {
	background: #fff;
    border: .1rem solid #cbcccc;
	border-radius: .3rem;
	box-shadow: 0 0 .8rem .3rem rgba(0,0,0,.1)inset;
    content: '';
    display: block;
	width: 3rem;
    height: 3rem;
    left: .5rem;
    margin-top: -1.5rem;
    position: absolute;
    top: 50%;
}
input[type="checkbox"] + label::after {
	border-right: .3rem solid #1d2088;
    border-bottom: .3rem solid #1d2088;
    content: '';
    display: block;
	width: 1rem;
    height: 2rem;
    left: 1.5rem;
    margin-top: -1.5rem;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    
}
input[type=checkbox]:checked + label::after {
    opacity: 1;
}
button.add {
	margin-left: 1.2rem;
	padding: 1.2rem 2.4rem;
	background-color: #1d2088;
	font-size: 1.6rem;
	color: #fff;
	font-weight: 600;
}
button.confirmation {
	margin-top: 2.4rem;
	padding: 2.4rem 10rem;
	background-color: #24d562;
	border-radius: 5rem;
	font-size: 2.4rem;
	color: #fff;
	font-weight: 800;
}
button.confirmation span {
	color: #fff;
	font-weight: 800;
}
.formTable {
	margin: 3.6rem auto;
	width: 100%;
	box-sizing: border-box;
	border: .1rem solid #cbcccc;
}
.formTable th {
	padding: 1.8rem;
	width: 32%;
	background-color: #efefef;
	box-sizing: border-box;
	border: .1rem solid #cbcccc;
	font-weight: 600;
	text-align: left;
}
.formTable th span {
	display: inline-block;
	float: right;
	padding: .2rem 1.2rem;
	background-color: #f00;
	color: #fff;
	font-weight: 600;
	text-align: center;
}
.formTable td {
	padding: 1.8rem;
	box-sizing: border-box;
	border: .1rem solid #cbcccc;
	text-align: left;
}
.formTable td dl {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 1.2rem;
	width: 100%;
}
.formTable td dl dt {
	width: 20%;
	padding: .4rem 0;
}
.formTable td dl dd {
	width: 80%;
	padding: .4rem 0;
}
.formTable td p {
	margin-top: 1.6rem;
	font-weight: 600;
}

.transmitBtn {
	margin: 3.6rem auto 4.2rem;
}
.transmitBtn .confBtn {
	display: flex;
	justify-content: center;
	width: 100%;
}
@media screen and (max-width: 768px) {
	.transmitBtn .confBtn {
		flex-direction: column;
	}
}
@media screen and (max-width: 768px) {
	input[type="text"],
	input[type="email"],
	input[type="tel"] {width: 100%; }
	input[type="text"].w70,
	input[type="email"].w70 { width: 100%; }
	input[type="tel"].w50 { width: 100%; }
	input[type="text"].w30 { width: 100%; }
	input[type="text"].w20 { width: 40%; }
	select { 
		width: 100%;
	}
	button.confirmation {
		padding: 2.4rem 3rem;
		width: 100%;
	}
	button.confirmation span {
		font-size: 6vw;
	}
	.formTable th,
	.formTable td {
		display: block;
		padding: 1.2rem 1.4rem;
		width: 100%;
	}
	.formTable th span {
		float: none;
		margin-left: 1.6rem;
	}
	.formTable td dl {
		flex-direction: column;
	}
	.formTable td dl dt, 
	.formTable td dl dd {
		width: 100%;
	}
}
.thanks {
	margin: 20rem 0 30rem;
}
.frameContainer {
	display: inline-block;
	margin: 3.2rem auto;
	width: 100%;
	height: 30rem;
	border: .2rem solid #cbcccc;
	box-sizing: border-box;
	overflow:auto;
    -webkit-overflow-scrolling: touch;
}
.frame {
	display: block;
	width: 100%;
	height: 100%;
}
#privacyBox {
	width: 100% !important;
	text-align: left;
}
.consent input[type="checkbox"] + label {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: .5rem 2.5rem;
	padding-left: 5rem;
    position: relative;
    width: auto;
}
.consent input[type="checkbox"] + label::before {
	background: #fff;
    border: .1rem solid #cbcccc;
	border-radius: .3rem;
	box-shadow: 0 0 .8rem .3rem rgba(0,0,0,.1)inset;
    content: '';
    display: block;
	width: 3rem;
    height: 3rem;
    left: .5rem;
    margin-top: -1.5rem;
    position: absolute;
    top: 50%;
}
.consent input[type="checkbox"] + label::after {
	border-right: .3rem solid #1d2088;
    border-bottom: .3rem solid #1d2088;
    content: '';
    display: block;
	width: 1rem;
    height: 2rem;
    left: 1.5rem;
    margin-top: -1.5rem;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    
}
.consent input[type=checkbox]:checked + label::after {
    opacity: 1;
}
.transmitBtn {
	display: flex;
	justify-content: space-around;
	margin-top: 3rem;
	width: 100%;
	text-align: center;
}
.transmitBtn li {
	list-style-type: none;
	width: 100%;
}
/*.transmitBtn li button {
	display: inline-block;
	position: relative;
	padding: 2.4rem;
	width: 80%;
	background-color: #f39b00;
	border: .1rem solid #f39b00;
	border-radius: 1.2rem;
	color: #fff;
	font-size: 3rem;
	font-weight: 600;
	text-align: center;
	-webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: button;
    appearance: button;
	cursor: pointer;
}*/
/*.transmitBtn li button::after {
	position: absolute;
	top: .3rem;
	right: .3rem;
	left: .3rem;
	bottom: .3rem;
	content: "";
	border: .3rem solid #ff0;
	border-radius: 1.2rem;
}*/
.transmitBtn li button.confirmation[type="submit"][disabled] {

	background-color: #ccc !important;
	cursor: default;
}
.policyLink { text-decoration: underline;}


/* ----------------------------------------
 *   pageTop
 * ---------------------------------------- */
#pageTop a {
	display: block;
	position: fixed;
	z-index: 9999;
	bottom: -60px;
	right: 10px;
	width: 50px;
	height: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #999;
	background-image: url(../images/common/pagetop.png);
	background-repeat: no-repeat;
	color: #fff;
	text-align: center;
	text-decoration: none;
	transition: .5s;
}
#pageTop a span { display: none; }
#pageTop a:hover{
	background: rgba(0,0,0,.8);
	background-image: url(../images/common/pagetop.png);
}