@charset "UTF-8";
/*!
---- SWDesign Original Stylesheet Template. ----
Thema Name:     model
Description:    model
Version:        1.0.0
Last Update:    2020/2/4
Author:         Naoto Ebitani
Company URL:    https://swdesign.jp
License:        GPL
License URL:    http://www.gnu.org/licenses/gpl.html
*/
html {
  font-display: swap;
}

.ming {
  font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
}

select::-ms-expand {
  display: none;
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}

address {
  margin-bottom: 0 !important;
}

ol, ul, dl {
  list-style: none;
  margin-bottom: 0 !important;
  padding-left: 0;
}

dd {
  margin-bottom: 0 !important;
  margin-left: 0 !important;
}

label {
  margin-bottom: 0 !important;
}

a:hover {
  text-decoration: none !important;
}

img {
  display: block;
  height: auto;
  margin: auto;
  max-width: 100%;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(51, 51, 51, 0);
}

@-ms-viewport {
  width: device-width;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 20px;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.5;
  color: #333;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
}

p {
  margin-top: 0;
  margin-bottom: 0;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 10px;
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
}

dd {
  margin-bottom: 5px;
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: none;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  color: #333;
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]) :hover {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 10px;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 10px;
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 7.5px;
  padding-top: 0.75rem;
  padding-bottom: 7.5px;
  padding-bottom: 0.75rem;
  color: #333;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 5px;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 5px;
  margin-bottom: .5rem;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

.icon.icon-footPoll:before {
  width: 1px;
  height: 15px;
  background-color: #ccc;
  bottom: 0;
  top: 0;
  left: 0;
  margin: auto;
}

.icon.icon-footPoll_r:after {
  width: 1px;
  height: 15px;
  background-color: #ccc;
  bottom: 0;
  top: 0;
  right: 0;
  margin: auto;
}

.normal {
  font-weight: 500;
}

.medium {
  font-weight: 600;
}

.bold {
  font-weight: bold;
}

.black {
  color: #333;
}

.white {
  color: #fff;
}

.gray {
  color: #707070;
}

.blue {
  color: #5A6EB1;
}

.sky {
  color: #40B4E9;
}

.purple {
  color: #8E54E9;
}

.green {
  color: #039898;
}

.blackBg {
  background: #333;
}

.whiteBg {
  background: #fff;
}

.grayBg {
  background: #e7e9ea;
}

.blueBg {
  background: #30607F;
}

.skyBg {
  background: #E1F2F4;
}

.gradBg {
  background: #40b4e9;
  background: linear-gradient(180deg, #40b4e9 0%, #8e54e9 100%);
}

.lh0 {
  line-height: 0;
}

.lhM {
  line-height: 1;
}

.lhL {
  line-height: 1.4;
}

.lhXL {
  line-height: 1.6;
}

.lhXXL {
  line-height: 1.8;
}

.lhXXXL {
  line-height: 2;
}

.taL {
  text-align: left !important;
}

.taC {
  text-align: center !important;
}

.taR {
  text-align: right !important;
}

.clearText {
  text-indent: 200%;
  white-space: nowrap;
  overflow: hidden;
}

.autoImg {
  width: 100%;
  height: auto;
}

.autoImg.full {
  width: auto;
  max-width: 100%;
  height: auto;
  display: table;
  margin: 0 auto;
}

.autoImg.lg {
  width: 80%;
  margin: 0 auto;
  display: block;
}

.autoImg.md {
  width: 50%;
  margin: 0 auto;
  display: block;
}

.autoImg.sm {
  width: 30%;
  margin: 0 auto;
  display: block;
}

.hAuto {
  height: auto !important;
}

.icon {
  position: relative;
}

.icon:before, .icon:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.logo {
  position: relative;
}

.logo:before, .logo:after {
  background: no-repeat center/contain;
  content: "";
  position: absolute;
}

.shadow {
  box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.1);
}

.radius {
  border-radius: 20px;
}

.app--btn {
  /*margin-top: 30px;*/
}

.app--btn a {
  background: #E6AB3A;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  padding: 30px 130px 30px 100px;
  border-radius: 50px;
  display: table;
  margin: auto;
  box-shadow: 8px 8px 20px rgba(0, 0, 0, 0.2);
  transition: .3s;
}

.app--btn a:after {
  width: 18px;
  height: 30px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 50px auto 0;
  background: no-repeat url(../image/icon/icon_right-white.svg);
}

.app--btn a:hover {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
  transition: .1s;
}

.accordion a img {
  border-radius: 32px;
  margin-top: 60px;
  box-shadow: 8px 8px 20px rgba(0, 0, 0, 0.2);
}

.accordion > ul > li > div {
  display: none;
}

.ctaBtn a {
  color: #fff !important;
  background: #E6AB3A;
  padding: 16px 60px 16px 50px;
  border-radius: 50px;
  display: block;
  margin: auto;
  transition: .3s;
  text-align: center;
  font-weight: bold;
}

.ctaBtn a:after {
  width: 14px;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 32px auto 0;
  background: no-repeat url(../image/icon/icon_right-white.svg);
  background-size: contain;
}

.ctaBtn a:hover {
  background: #fff;
  color: #000 !important;
}

.ctaBtn a:hover:after {
  background: no-repeat url(../image/icon/icon_right-black.svg);
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  /*font-size: 1.6em;*/
  position: relative;
}

/*----------▼▼ wrapper ▼▼----------*/
.wrapper {
  letter-spacing: 0.05em;
  /*overflow: hidden;*/
  position: relative;
  width: 100%;
}

/*----------▼▼ centering ▼▼----------*/
.mAuto {
  margin: auto;
}

/*----------▼▼ section ▼▼----------*/
/* common */
.posRel {
  position: relative;
}

.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

.fBox {
  margin-left: -4%;
}

.fAll {
  float: left;
  width: 96%;
  margin-left: 4%;
}

.f1of2 {
  float: left;
  width: 46%;
  margin-left: 4%;
}

.f1of3 {
  float: left;
  width: 29.3333%;
  margin-left: 4%;
}

.f2of3 {
  float: left;
  width: 62.6666%;
  margin-left: 4%;
}

.f1of4 {
  float: left;
  width: 21%;
  margin-left: 4%;
}

.f3of4 {
  float: left;
  width: 71%;
  margin-left: 4%;
}

.f1of5 {
  float: left;
  width: 16%;
  margin-left: 4%;
}

.f2of5 {
  float: left;
  width: 36%;
  margin-left: 4%;
}

.f3of5 {
  float: left;
  width: 56%;
  margin-left: 4%;
}

.f4of5 {
  float: left;
  width: 76%;
  margin-left: 4%;
}

.f1of6 {
  float: left;
  width: 12.6666%;
  margin-left: 4%;
}

.f5of6 {
  float: left;
  width: 79.3333%;
  margin-left: 4%;
}

.f1of7 {
  float: left;
  width: 10.2857%;
  margin-left: 4%;
}

.f2of7 {
  float: left;
  width: 24.5714%;
  margin-left: 4%;
}

.f3of7 {
  float: left;
  width: 38.8571%;
  margin-left: 4%;
}

.f4of7 {
  float: left;
  width: 53.1428%;
  margin-left: 4%;
}

.f5of7 {
  float: left;
  width: 67.4285%;
  margin-left: 4%;
}

.f6of7 {
  float: left;
  width: 81.7142%;
  margin-left: 4%;
}

.f1of8 {
  float: left;
  width: 8.5%;
  margin-left: 4%;
}

.f3of8 {
  float: left;
  width: 33.5%;
  margin-left: 4%;
}

/* SP */

/* PC */

/*---------- float ----------*/
.fL {
  float: left !important;
}

.fR {
  float: right !important;
}

/*----------▼▼ clearfix ▼▼----------*/
.cf:after {
  clear: both;
  content: "";
  display: block;
}

/*----------▼▼ flex-box ▼▼----------*/
/* common */
.flexBox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/* SP */

/* PC */

/*----------grid-box ----------*/
/* common */
.gridBox {
  display: -ms-grid;
  display: grid;
}

/* SP */

/* PC */

/*----------▼▼ content-size ▼▼----------*/
/* SP */

/* PC */

article {
  padding: 100px 0;
}

.cmnTtl__type1 {
  font-weight: bold;
  position: relative;
  letter-spacing: 0;
  text-align: center;
  line-height: 1.4;
  margin: auto;
  display: table;
  padding: 0 27px 20px;
  border-bottom: 2px solid #004FAA;
  font-size: 40px;
}

.cmnTtl__type1:before, .cmnTtl__type1:after {
  content: '';
  background-color: #004FAA;
  position: absolute;
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 60%;
  bottom: 0;
}

.cmnTtl__type1:before {
  left: 0;
  margin: 0px 0px -4px -4px;
}

.cmnTtl__type1:after {
  right: 0;
  margin: 0px -4px -4px 0px;
}

.cmnTtl__type2 {
  font-weight: bold;
  position: relative;
  letter-spacing: 0;
  text-align: center;
  line-height: 1.4;
  margin: auto;
  display: table;
  padding: 0 0px 6px;
  border-bottom: 6px solid #0BDEFC;
  -o-border-image: linear-gradient(to right, #0BDEFC 0%, #004FAA 100%);
  border-image: linear-gradient(to right, #0BDEFC 0%, #004FAA 100%);
  border-image-slice: 1;
}

.cmnTtl__type3 {
  position: relative;
  display: table;
  margin: 50px auto 0;
  padding: 10px 74px;
  color: #fff;
  letter-spacing: 0em;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
}

.cmnTtl__type3:after {
  width: 51px;
  height: 50px;
  background-image: url(../image/icon/icon_arrow-down.svg);
  position: absolute;
  bottom: 0;
  margin: 0 auto -28px;
  left: 0;
  right: 0;
}

.cmnTtl__type4 {
  position: relative;
  color: #8E54E9;
  font-weight: bold;
}

.cmnTtl__type4 span {
  font-size: 24px;
  color: #AAAAAA;
}

.cmnTtl__type5 {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  padding: 28px 0;
  line-height: 1.4;
}

.cmnTtl__type5:after {
  width: 47px;
  height: 16px;
  background-image: url(../image/icon/icon_arrow-forward.svg);
  position: absolute;
  bottom: 0;
  margin: 0 auto -15px;
  left: 0;
  right: 0;
}

h3 {
  font-weight: normal;
  letter-spacing: 0;
}

.subTitle {
  font-size: 37px;
  text-align: center;
}

.subTitle span {
  background: linear-gradient(transparent 70%, rgba(230, 171, 58, 0.5) 0%);
  display: inline;
  padding: 0 2px 4px;
  font-weight: bold;
}

.marker {
  background: linear-gradient(transparent 70%, rgba(230, 171, 58, 0.5) 0%);
  display: inline;
  padding: 0 2px 4px;
}

.uLine {
  text-decoration: underline;
}

.FixedFt {
  z-index: 10;
  width: 100%;
  background: #F2F7FB;
  padding: 6px 0;
}

.FixedFt__wrap {
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
}

.FixedFt__text {
  width: 50%;
  border-right: 5px solid #fff;
  border-left: 5px solid #fff;
  font-size: 17px;
}

.FixedFt__text span {
  font-size: 20px;
  font-weight: bold;
  color: #8E54E9;
}

.FixedFt .ctaBtn {
  width: 50%;
  padding: 0 32px;
  border-right: 5px solid #fff;
}

/*
.ctaBox {
	@include pc {
    	width: 1000px;
    	margin: 6px auto;
    	display: table;
    	text-align: center;
    	border-left: 1px solid $white;
    	li {
    		display: table-cell;
    		vertical-align: middle;
    		padding: 0px 10px;
    		&.phone {
    			width: 300px;
    			a {
    				font-size: 10px;
    				line-height: 1.2;
    				text-align: left;
    				padding-left: 50px;
    			}
    			span {
    				font-size: 10px;
    			}
    		}
    		&.top {
    			width: 80px;
    			border-right: 1px solid $white;
    			border-left: 1px solid $white;
    		}
    		a {
    			padding: 10px 10px;
    			width: 100%;
    			display: block;
    			border-radius: 5px;
    			font-weight: 500;
    			line-height: 1;
    			span {
    				font-size: 10px;
    			}
    			span.number {
    				font-size: 30px;
    			}
    			span.forSp {
    				font-size: 14px;
    			}
    		}
    	}
	};
	@include sp {
    	margin: 0 auto;
	    display: -ms-flexbox;
	    display: flex;
	    -ms-flex-align: center;
	    align-items: center;
	    -ms-flex-line-pack: justify;
	    align-content: space-between;
	    text-align: center;
	    border-left: none;
	    height: 60px;
    	li {
    		padding: 0 0px 0 10px;
    		&.phone {
    			width: 300px;
    			a {
    				font-size: 14px;
				    white-space: nowrap;
				    background: rgba(255, 255, 255, 0.5);
				    padding: 20px 8px 0;
    			}

    		}
    		&.top {
    			width: 50px;
    			padding-right: 10px;
    		}
    		a {
    			display: block;
			    border-radius: 5px;
			    font-weight: 700;
			    font-size: 12px;
    			span {
    				font-size: 10px;
    			}
    			span.number {
    				font-size: 14px;
    			}
    		}

    	}
	};
}
*/
.Footer {
  background: #fff;
}

.Footer__brandName {
  background-image: url(../image/logo/logo_c.svg);
  color: #fff;
  width: 170px;
  height: 52px;
  background-size: contain;
  background-repeat: no-repeat;
  box-sizing: border-box;
  margin: auto;
  display: block;
}

.FtSMap {
  font-size: 13px;
}

.FtSMap img {
  width: 200px;
}

.FtSMap__menu {
  width: 800px;
  padding: 10px 0;
  margin: auto;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.FtSMap__menu ul {
  display: inline-block;
}

.FtSMap__menu li {
  float: left;
}

.footMenu {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.footMenu a {
  position: relative;
  padding: 0 15px;
  color: #333;
  display: inline-block;
  line-height: 2;
}

.footMenu a.pale {
  color: #ccc;
}

.snsBox {
  width: 140px;
  padding-top: 32px;
}

.snsBox li {
  float: left;
  padding: 5px;
}

.Footer__copyYearContainer {
  background: linear-gradient(90deg, #4c9ffd 0%, #2f6099 100%);
}

.Footer__copyYear {
  color: #fff;
  text-align: center;
}

.Footer__contact {
  background-color: linear-gradient(90deg, #4c9ffd 0%, #2f6099 100%);
  border-top: 1px solid #999;
  padding: 40px 0;
}

#header {
  width: 100%;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  top: 0;
  left: 0;
}

.Header__brandName {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.Header__brandName a {
  background-image: url(../image/logo/logo_c.svg);
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
}

.top_logo_assort {
  margin: 40px 7% 64px;
}

.mainVisual h1 {
  position: relative;
}

.mainVisual__btn {
  width: 70%;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin-bottom: 48px;
}

/*
.coaching {
	background-image: url(../image/bg/coachingBg.webp);
	background-repeat: no-repeat;
	background-position: 0 30%; 
	background-size: contain;
	&__copy {
		text-align: center;
		font-size: $textXXLPc;
		margin: 47px 0 0;
	}
	&__lead {
		position: relative;
		display: table;
		margin: 50px auto 0;
		padding: 10px 95px;
		color: $white;
		background: rgb(64,180,233);
		background: linear-gradient(90deg, rgba(64,180,233,1) 0%, rgba(142,84,233,1) 100%);
		&:after {
			width: 14px;
			height: 12px;
			background-image: url(../image/icon/icon_arrow-down.svg);
			position: absolute;
			bottom: 0;
		    margin: 0 auto -9px;
		    left: 0;
		    right: 0;
		}
	}
	&__img {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 50px;
		img {
			width: 325px;
		}
	}
	&__text {
		margin: 47px 15% 0 6%;
	}
}
*/
.coach {
  background: #F2F7FB url(../image/bg/coachBg.webp) no-repeat center bottom;
  background-size: cover;
}

.coach__wrap {
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.coach__card {
  background: #fff;
  border-radius: 20px;
  padding: 40px;
}

.coach__card--img {
  width: 42%;
}

.coach__card--text {
  width: 55%;
  font-size: 30px;
  font-weight: bold;
}

.coach__card--text span {
  color: #039898;
}

.coach__card--text .name {
  margin-top: 20px;
  font-size: 20px;
  font-weight: normal;
}

.coach__card--desc {
  margin-top: 30px;
  background: #F5F5F5;
  padding: 20px;
  border-radius: 20px;
  font-size: 16px;
  line-height: 1.8;
}

.coach__card--desc span {
  font-weight: bold;
  background: linear-gradient(transparent 70%, rgba(230, 171, 58, 0.5) 0%);
  display: inline;
  padding: 0 2px 4px;
}

.onece {
  background: url(../image/bg/onceBg.webp) no-repeat center;
  background-size: cover;
  font-size: 24px;
}

.onece__catch {
  font-size: 30px;
  font-weight: bold;
}

.onece__catch span {
  color: #039898;
}

.onece__catch span.marker {
  color: #333;
}

/*
.voices {
	background-image: url(../image/bg/voicesBg.webp);
	background-position: top center; 
	background-size: contain;
	&__copy {
		text-align: center;
		font-size: $textXXLPc;
		margin: 47px 0 0;
	}
	&__img {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		margin-top: 30px;
		&--item {
			width: 49%;
			margin: inherit;
		}
	}
	@include sp {
		padding-bottom: 20px;
	};
}
*/
.promise {
  background: url(../image/bg/promiseBg.webp) no-repeat center bottom;
  background-size: contain;
}

.promise:before {
  width: 775px;
  height: 102px;
  background-image: url(../image/bg/change.svg);
  top: 0;
  margin: 83px auto 0;
  left: 0;
  right: 0;
}

.promise__wrap {
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.promise__card {
  width: 47%;
  background: #fff;
  border-radius: 20px;
  min-height: 560px;
}

.promise__card--title {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  color: #039898;
  margin-top: 30px;
  margin-bottom: 20px;
}

.promise__card p {
  margin: 20px;
  font-size: 16px;
  line-height: 1.9;
}

.promise__img {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 30px;
}

.promise__img--item {
  width: 48%;
  margin: inherit;
}

.merit {
  background: url(../image/bg/meritBg.webp) no-repeat center top;
  background-size: cover;
}

.merit__wrap {
  background: #fff;
  border-radius: 20px;
  padding: 70px 40px;
}

.merit__box {
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.merit__card {
  width: 31.5%;
  border-radius: 20px;
  border: 4px solid #E9F0F0;
  padding: 20px;
}

.merit__card--title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0;
  margin: 20px 0 10px;
}

.merit__card p {
  font-size: 16px;
  line-height: 1.8;
}

.status {
  background: url(../image/bg/statusBg.webp) no-repeat center top;
  background-size: contain;
}

.status__wrap {
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.status img {
  width: 47%;
}

.aboutUs {
  margin-top: 60px;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  padding: 64px 0 100px;
}

.aboutUs:before {
  background-image: url(../image/bg/aboutUs.svg);
  width: 408px;
  height: 60px;
  top: 0;
  left: 0;
  right: 0;
  margin: -58px auto 0;
}

.aboutUs__title {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.1em;
  position: relative;
}

.aboutUs__title:before {
  content: '';
  background-color: #fff;
  position: absolute;
  display: block;
  width: 38px;
  height: 3px;
  top: 0;
  left: 0;
  right: 0;
  margin: -20px auto 0;
}

.aboutUs__copy p {
  font-size: 37px;
  font-weight: bold;
  background: #fff;
  display: inline;
  color: #5A6EB1;
  padding: 5px 16px;
  line-height: 1.7;
}

.aboutUs__text {
  color: #fff;
  font-size: 18px;
  line-height: 1.9;
}

.aboutUs__text span {
  font-size: 20px;
  font-weight: bold;
}

/* スライドの動き等速 */
.swiper {
  position: relative;
  overflow: hidden;
  padding: 20px 0;
  max-height: 600px;
  min-height: 160px;
}

.swiper .swiper-slide {
  text-align: center;
  line-height: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: center;
  justify-content: center;
}

.swiper .swiper-slide img {
  display: inline;
  width: auto;
  max-width: 100%;
  max-height: 100%;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.swiper-wrapper {
  transition-timing-function: linear;
}

.why {
  background-image: url(../image/bg/whyBg.webp);
  background-position: top center;
  background-size: contain;
}

.why__card {
  background: #fff;
  border-radius: 20px;
  margin-top: 47px;
  box-shadow: 0px 0px 14px rgba(0, 0, 0, 0.1);
}

.why__card--title {
  text-align: center;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  padding: 20px 0;
  border-radius: 20px 20px 0 0;
  color: #fff;
}

.why__card--title h3 {
  font-size: 37px;
}

.why__card--num {
  position: relative;
}

.why__card--num:before {
  width: 44px;
  height: 44px;
  content: "";
  display: inline-block;
  vertical-align: middle;
  margin: 0 16px 8px 0;
}

.why__card--num.no01:before {
  background: no-repeat url(../image/icon/icon_num01.svg);
}

.why__card--num.no02:before {
  background: no-repeat url(../image/icon/icon_num02.svg);
}

.why__card--num.no03:before {
  background: no-repeat url(../image/icon/icon_num03.svg);
}

.why__card--case {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  padding: 40px;
}

.why__card--img {
  width: 45%;
}

.why__card--text {
  width: 50%;
}

.why__card--text p {
  padding-bottom: 14px;
}

.why__card--text p.effect {
  text-decoration: underline;
}

.why__card--text p.call {
  margin-top: 14px;
  font-size: 24px;
  font-weight: 600;
  letter-spacing: 0;
  padding: 0 0 0 1.3em;
}

.why__card--text p.call:before {
  width: 25px;
  height: 24px;
  background-image: url(../image/icon/icon_check.svg);
  top: 0;
  left: 0;
}

.spec {
  background: url(../image/bg/specBg.webp) no-repeat center top;
  background-size: cover;
}

.spec__wrap img {
  width: 32%;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0px;
  display: block;
  z-index: 10;
}

/*
.point {
	&__area {
		padding: 90px 0 70px;
	}
	&__box {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		&--card {
			width: 47%;
			height: 590px;
			padding: 77px 40px;
			border: 2px solid #000;
			background: $white;
			margin-bottom: 70px;
			&:before {
				background: #fff;
				width: 170px;
				height: 4px;
				margin: -3px auto 0;
				top: 0;
				left: 0;
				right: 0;
			}
			&:after {
				width: 132px;
				height: 89px;				
				top: 0;
			    margin: -22px auto 0;
			    left: 0;
			    right: 0;
			}
			&.no01:after { background-image: url(../image/icon/point01.svg); }
			&.no02:after { background-image: url(../image/icon/point02.svg); }
			&.no03:after { background-image: url(../image/icon/point03.svg); }
			&.no04:after { background-image: url(../image/icon/point04.svg); }
			&.no05:after { background-image: url(../image/icon/point05.svg); }
			&.no06:after { background-image: url(../image/icon/point06.svg); }
			p {
				font-size: 16px;
				line-height: 2;
			}
		}

		&--title {
			text-align: center;
			font-weight: 600;
			color: $purple;
			font-size: 30px;
			margin: 20px 0;			
			span {
				background:linear-gradient(transparent 70%, #FBF050 0%);
			}
		}
	}
}
*/
.voice {
  background: url(../image/bg/voiceBg.webp) no-repeat center top;
  background-size: cover;
}

.voice__plus {
  font-size: 30px;
  color: #039898;
  font-weight: bold;
  border-radius: 12px;
  border: 2px solid #039898;
  text-align: center;
  display: table;
  padding: 4px 12px;
  margin: auto;
}

.voice__plus:before {
  width: 25px;
  height: 24px;
  background-image: url(../image/icon/triangle.svg);
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto -18px;
}

.voice__wrap {
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
}

.voice__card {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0px 0px 14px rgba(0, 0, 0, 0.1);
  padding: 40px;
}

.voice__card--img {
  width: 40%;
}

.voice__card--text {
  width: 57%;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0em;
}

.voice__card--text span {
  color: #039898;
}

.voice__card--desc {
  border-radius: 20px;
  background: #F5F5F5;
  padding: 20px;
  font-size: 16px;
  line-height: 1.8;
  margin-top: 30px;
}

.voice__card--desc span {
  background: linear-gradient(transparent 70%, rgba(230, 171, 58, 0.5) 0%);
  display: inline;
  padding: 0 2px 4px;
  font-weight: bold;
}

.voice__card--title {
  font-size: 20px;
  font-weight: 500;
  margin-top: 20px;
}

.logic {
  background-image: url(../image/bg/logicBg.webp);
  background-position: top center;
  background-size: contain;
}

.logic__card {
  background: #fff;
  border-radius: 20px;
  margin-top: 47px;
  padding: 70px 40px;
}

.logic__book {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
}

.logic__book--head {
  font-size: 30px;
  line-height: 1.3;
  border-left: 5px solid #5A6EB1;
  padding: 6px 0px 6px 24px;
}

.logic__book--img {
  width: 45%;
}

.logic__book--text {
  width: 55%;
  font-size: 16px;
}

.logic__book--text p {
  line-height: 2;
}

.logic__book--text .title {
  font-size: 30px;
  line-height: 1.2;
  border-left: 6px solid #8E54E9;
  padding: 15px 25px;
}

.logic__method {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 50px;
}

.logic__method--img {
  width: 40%;
}

.logic__method--text {
  width: 55%;
  font-size: 16px;
}

.logic__method--text span {
  text-decoration: underline;
}

/*
.contents {
	background: $pale url(../image/bg/contentsBg.webp) no-repeat center bottom;
	background-size: contain;
	box-shadow: 0px 6px 14px 0px rgba(0,0,0,0.05);
	z-index: 5;
	&:after {
		width: 107px;
		height: 66px;
		background-image: url(../image/icon/icon_arrow-bottom.svg);
		bottom: 0;
	    margin: 0 auto -49px;
	    left: 0;
	    right: 0;
	    z-index: -1;
	}
	&__box {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		img {
			width: 29%;
			&.img01 {margin-top: 127px;}
			&.img02 {margin-top: 87px;}
			&.img03 {margin-top: 47px;}
		}
	}
	&__num {
		padding-left: 57px;
		&:before {
			width: 44px;
			height: 44px;
			top: 0;
			left: 0;			
		}
		&.no1 {background: no-repeat url(../image/icon/contents_num01.svg);}
		&.no2 {background: no-repeat url(../image/icon/contents_num02.svg);}
		&.no3 {background: no-repeat url(../image/icon/contents_num03.svg);}
	}
	&__case {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		padding: 0 40px 0px 20px;
		&.r {
			padding: 0 20px 0px 40px;
		}
	}
	&__card {
		position: relative;
		z-index: 5;
		&:before {
			background: $white;
		    display: block;
		    width: calc( 100% - ( 100% - 976px ) / 2 );
		    height: 100%;
		    box-shadow: 0px 0px 18px rgba(0,0,0,.1);
		    border-radius: 0 20px 20px 0;
		    z-index: -1;
		}
		&.right:before {
			background: $white;
		    display: block;
		    width: calc( 100% - ( 100% - 976px ) / 2 );
		    height: 100%;
		    box-shadow: 0px 0px 18px rgba(0,0,0,.1);
		    border-radius: 20px 0 0 20px;
		    z-index: -1;
		    right: 0;			
		}
		&--img {
			width: 42%;
		}
		&--text {
			width: 55%;
		}
		&--list {
			border: 2px solid #DDDEDE;
			border-radius: 20px;
			padding: 16px 0px;
			font-size: 16px;
			ul {
				display: table;
				margin: auto;
			}
			ul li {
				padding: 0 0 5px 20px;
			}
			ul li:before {
				width: 17px;
				height: 16px;
				background-image: url(../image/icon/icon_check-blue.svg);
				top: 0;
				left: 0;
				margin-top: 3px;				
			}
		}
	}
}

.approach {
	background-color: $whitesmoke;
	&__head {
		text-align: center;
		background: $white;
		display: table;
    	margin: auto;
    	padding: 30px 20px;
		&--img {
			width: 166px;
			margin: auto;
		}
		&--title {
			font-size: 30px;
			font-weight: bold;
			color: $purple;
		}
		&:after {
			width: 105px;
			height: 41px;
			background-image: url(../image/icon/icon_arrow-contents.svg);
			bottom: 0;
		    margin: 0 auto -41px;
		    left: 0;
		    right: 0;
		}
	}
	&__card {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-self: stretch;
		margin-top: 50px;
		z-index: 5;
		&:before{
			width: 976px;
			height: 16px;
			background: $lilac;
		    bottom: 0;
		    top: 0;
		    margin: auto;
		    left: 0;
		    right: 0;
		    z-index: -1;
		}		
	}
	&__item {
		width: 30%;
		background: $white;
		padding: 30px 20px;
		box-shadow: 0px 0px 18px rgba(0,0,0,.1);
		&:after{
			width: 49px;
			height: 46px;
			background-image: url(../image/icon/icon_arrow-right.svg);
			bottom: 0;
			top: 0;
		    margin: auto 0 auto -40px;
		}
		&--img {
			img {
				height: 142px;
			}
		}
		&--text {
			font-size: 16px;
			line-height: 1.8;
			margin-top: 12px;
		}
	}
}
*/
.sessionHead {
  background-image: url(../image/photo/session.webp);
  background-size: cover;
  padding: 70px 0 150px;
}

.sessionHead__title {
  font-size: 24px;
  color: #fff;
  border-bottom: 3px solid #FBF050;
  display: table;
  margin: auto;
  text-align: center;
  line-height: 1.6;
}

.sessionHead__title span {
  font-size: 30px;
  font-weight: bold;
  color: #FBF050;
}

.sessionHead p {
  display: table;
  margin: auto;
  width: 896px;
  font-size: 16px;
  line-height: 1.6;
  color: #fff;
  margin-top: 50px;
}

.session {
  background: #fff url(../image/bg/sessionBg.webp) no-repeat center bottom;
  background-size: contain;
  padding-bottom: 100px;
}

.session__topCard {
  background: #fff;
  width: 976px;
  padding: 50px 40px;
  text-align: center;
  margin: 64px auto 0;
}

.session__topCard--lead {
  position: relative;
  display: table;
  margin: 0px auto 0;
  padding: 4px 12px;
  color: #fff;
  font-size: 30px;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
}

.session__topCard--lead:after {
  width: 14px;
  height: 12px;
  background-image: url(../image/icon/icon_arrow-down.svg);
  position: absolute;
  bottom: 0;
  margin: 0 auto -9px;
  left: 0;
  right: 0;
}

.session__topCard--title {
  font-size: 37px;
  color: #5A6EB1;
  font-weight: bold;
  margin-top: 34px;
}

.session__topCard p {
  margin-top: 10px;
}

.session__topCard--lead2 {
  font-weight: bold;
  color: #fff;
  background: #333;
  display: table;
  margin: 20px auto 0;
  padding: 5px 100px;
}

.session__topCard--lead2:before {
  width: 100%;
  height: 1px;
  background: #333;
  margin: -4px auto 0;
  left: 0;
  right: 0;
  top: 0;
}

.session__topCard--lead2:after {
  width: 100%;
  height: 1px;
  background: #333;
  margin: 0 auto -4px;
  left: 0;
  right: 0;
  bottom: 0;
}

.session__topCard--lead3 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.3;
}

.session__topCard--copy:before {
  width: 38px;
  height: 52px;
  background-image: url(../image/icon/icon_clip.svg);
  bottom: 0;
  left: 0;
  margin: 0 0 0 130px;
}

.session__topCard--copy:after {
  width: 38px;
  height: 52px;
  background-image: url(../image/icon/icon_clip2.svg);
  bottom: 0;
  right: 0;
  margin: 0 130px 0 0;
}

.session table {
  margin: 20px auto 0;
}

.session th, .session td {
  border: solid 1px #DDDEDE;
  width: 150px;
  padding: 17px 40px;
  white-space: nowrap;
}

.session th {
  font-size: 16px;
  font-weight: bold;
  background: #DDDEDE;
}

.session td {
  font-size: 20px;
  font-weight: bold;
}

.session td span {
  font-size: 16px;
}

.session__contents {
  padding: 100px 0;
  margin: 100px 0 0;
}

.session h3 {
  font-size: 37px;
  font-weight: bold;
  text-align: center;
}

.sessionWrap__contents {
  margin: 96px auto 0;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  display: table;
  padding: 16px;
  /*
		&:after {
			width: 285px;
			height: 64px;
			background-image: url(../image/photo/clip.svg);
			position: absolute;
			top: 0;
		    margin: auto;
		    left: 0;
		    right: 0;
		}
		*/
}

.sessionWrap__contents--board {
  background: #fff;
  padding: 90px 40px 60px 60px;
}

.sessionWrap__contents--board:before {
  width: 67px;
  height: 215px;
  background-image: url(../image/icon/boy.svg);
  bottom: 0;
  margin: 0px 0 -80px -140px;
  left: 0;
}

.sessionWrap__contents--board:after {
  width: 67px;
  height: 215px;
  background-image: url(../image/icon/girl.svg);
  top: 0;
  margin: -60px -130px 0px 0px;
  right: 0;
}

.sessionWrap__contents--board ul li {
  margin-bottom: 12px;
  padding-left: 2em;
}

.sessionWrap__contents--board ul li:before {
  width: 32px;
  height: 31px;
  background-image: url(../image/icon/icon-check.svg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
}

.sessionWrap__card {
  background: #fff;
  margin-top: 50px;
}

.sessionWrap__card--title {
  font-size: 30px;
  letter-spacing: 0em;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  background: #40b4e9;
  background: linear-gradient(90deg, #40b4e9 0%, #8e54e9 100%);
  border-radius: 20px 20px 0 0;
}

.sessionWrap__card--box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 40px;
}

.sessionWrap__card--img {
  width: 45%;
}

.sessionWrap__card--img img {
  border-radius: 20px;
}

.sessionWrap__card--text {
  width: 50%;
}

.sessionWrap__card--text ul li {
  margin-bottom: 12px;
  padding-left: 20px;
}

.sessionWrap__card--text ul li:before {
  width: 17px;
  height: 16px;
  background-image: url(../image/icon/icon_check-blue.svg);
  top: 0;
  left: 0;
  margin-top: 6px;
}

.sessionWrap__arrow {
  width: 60px;
}

.taiken {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  margin-top: 80px;
}

.taiken__card {
  width: 30%;
  padding: 40px 0 0;
}

.taiken__card:after {
  width: 66px;
  height: 66px;
  top: 0;
  left: 0;
  margin: -33px 0 0 16px;
}

.taiken__card.no1:after {
  background: no-repeat url(../image/icon/taiken_num01.svg);
}

.taiken__card.no2:after {
  background: no-repeat url(../image/icon/taiken_num02.svg);
}

.taiken__card.no3:after {
  background: no-repeat url(../image/icon/taiken_num03.svg);
}

.taiken__card--title {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 40px auto 20px;
  line-height: 1.2;
  margin-bottom: 20px;
}

.taiken__card--text {
  font-size: 14px;
  line-height: 1.6;
  padding: 20px 20px 40px;
}

.taiken__card--arrow:before {
  width: 16px;
  height: 27px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0 auto -32px;
  background: no-repeat url(../image/icon/icon_right.svg);
}

.taiken__app {
  background: no-repeat url(../image/bg/taiken_appBg.webp);
  background-size: cover;
  padding: 80px 0;
}

.taiken__app:before {
  width: 1px;
  height: 84px;
  top: 0;
  left: 0;
  right: 0;
  margin: -40px auto 0;
  background: no-repeat url(../image/icon/icon_line-ver.svg);
}

.taiken__app--title {
  font-size: 30px;
  font-weight: bold;
  color: #fff;
}

.taiken__app--text {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.8;
  margin-top: 40px;
}

.taiken__app--lead {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 40px auto 30px;
}

.taiken__app--lead p.head {
  display: table;
  background: #fff;
  padding: 5px 12px;
  margin-right: 8px;
}

.taiken__app--lead p.head span {
  color: #40b4e9;
  background: -webkit-linear-gradient(0deg, #40b4e9 0%, #8e54e9 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.taiken__app--lead p {
  color: #fff;
  font-size: 37px;
  font-weight: bold;
  letter-spacing: 0em;
}

.taiken__app table {
  display: table;
  margin: auto;
}

.taiken__app th, .taiken__app td {
  width: 230px;
  padding: 17px 0;
  white-space: nowrap;
  font-weight: bold;
}

.taiken__app th {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  background: #40b4e9;
  background: linear-gradient(90deg, #40b4e9 0%, #8e54e9 100%);
}

.taiken__app th > ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.taiken__app td {
  border: solid 1px #DDDEDE;
  font-size: 20px;
  background: #fff;
}

.taiken__app td span {
  font-size: 16px;
}

/*
.difference {
	background: $pale url(../image/bg/differenceBg.webp) no-repeat center bottom;
	background-size: cover;
	box-shadow: 0px 6px 14px 0px rgba(0,0,0,0.05);
	z-index: 5;
	&__card {
		background: $white;
		margin-top: 50px;
		&--title {
			text-align: center;
			color: $white;
			padding: 22px 0;
			background: rgb(64,180,233);
			background: linear-gradient(90deg, rgba(64,180,233,1) 0%, rgba(142,84,233,1) 100%);
			border-radius: 20px 20px 0 0;
			h3 {
				font-size: 37px;
			}
		}
		&--num {
			position: relative;
			&:before {
				width: 44px;
			    height: 44px;
			    content: "";
			    display: inline-block;
			    vertical-align: middle;
			    margin: 0 16px 8px 0;	
			}
			&.no01:before {background: no-repeat url(../image/icon/icon_num01.svg);}
			&.no02:before {background: no-repeat url(../image/icon/icon_num02.svg);}
			&.no03:before {background: no-repeat url(../image/icon/icon_num03.svg);}
		}		
		&--case {
			display: -ms-flexbox;
		    display: flex;
		    -ms-flex-pack: justify;
		    justify-content: space-between;
		    -ms-flex-align: center;
		    align-items: center;
		    -ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		    padding: 40px;			
		}
		&--img {
			width: 43%;
		}
		&--text {
			width: 53%;
			font-size: 16px;
			line-height: 2;
		}
	}
}

.diffApp {
	padding: 70px 0;
	background-image: url(../image/photo/session.webp);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
	&__topCard {
		background: $white;
	    width: 976px;
	    padding: 50px 40px;
	    text-align: center;
	    margin: 0 auto 0;
	    z-index: 5;
	    left: 0;
	    right: 0;
	    &--lead {
			position: relative;
			display: table;
			margin: 0px auto 0;
			padding: 4px 95px;
			color: #fff;
			font-size: 30px;
			background: #40b4e9;
			background: linear-gradient(90deg, #40b4e9 0%, #8e54e9 100%);
			&:after {
				width: 14px;
				height: 12px;
				background-image: url(../image/icon/icon_arrow-down.svg);
				position: absolute;
				bottom: 0;
			    margin: 0 auto -9px;
			    left: 0;
			    right: 0;
			}
	    }
	    &--title {
	    	font-size: 30px;
	    	color: $purple;
	    	font-weight: bold;
	    	margin-top: 34px;
	    }
	    p {
	    	margin-top: 10px;
	    }
	    &--lead2 {
	    	font-weight: bold;
	    	color: $white;
	    	background: $black;
	    	display: table;
	    	margin: 20px auto 0;
	    	padding: 5px 100px;
	    	&:before {
			    width: 100%;
			    height: 1px;
			    background: #333;
			    margin: -4px auto 0;
			    left: 0;
			    right: 0;
			    top: 0;
	    	}
	    	&:after {
			    width: 100%;
			    height: 1px;
			    background: #333;
			    margin: 0 auto -4px;
			    left: 0;
			    right: 0;
			    bottom: 0;
	    	}
	    }
	}
}
*/
.reason {
  background: #F5F5F5 url(../image/bg/recognizeBg.webp) no-repeat center 50%;
  background-size: contain;
  padding-bottom: 47px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.15);
  z-index: 5;
}

.reason:after {
  width: 170px;
  height: 74px;
  background-image: url(../image/icon/icon_down-white.svg);
  bottom: 0;
  margin: 0 auto -67px;
  left: 0;
  right: 0;
  z-index: -1;
}

.reason__box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.reason__box:after {
  position: absolute;
  background: no-repeat url(../image/icon/icon_down.svg);
  width: 62px;
  height: 24px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0px auto -54px;
}

.reason__item {
  border: 5px solid #AAAAAA;
  background: #fff;
  width: 31%;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 60px 0 54px;
  margin-top: 70px;
  line-height: 1.4;
}

.reason__item:after {
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0;
  left: 0;
  right: 0;
  margin: -25px auto 0;
}

.reason__item.no01:after {
  background: no-repeat url(../image/icon/icon_reason01.svg);
}

.reason__item.no02:after {
  background: no-repeat url(../image/icon/icon_reason02.svg);
}

.reason__item.no03:after {
  background: no-repeat url(../image/icon/icon_reason03.svg);
}

.reason__case {
  border: 5px solid #AAAAAA;
  background: #fff;
  text-align: center;
  margin: 110px 0 0;
  padding: 30px 0 54px;
}

.reason__case--head {
  font-size: 30px;
  color: #fff;
  background: #AAAAAA;
  position: relative;
  display: table;
  margin: -65px auto 0;
  padding: 10px 32px;
}

.reason__case--text {
  font-size: 37px;
  margin-top: 30px;
}

.reason__case--text span {
  background: linear-gradient(transparent 70%, #CFCFCF 0%);
  display: inline;
  padding: 0 2px 4px;
}

.reason__case--lead {
  font-size: 37px;
  font-weight: bold;
}

.reason__case--lead span {
  color: #8E54E9;
}

.reasonApp {
  padding: 100px 0;
  background-image: url(../image/bg/reasonBg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
}

.reasonApp__topCard {
  background: #fff;
  width: 976px;
  padding: 50px 40px;
  text-align: center;
  margin: 0 auto 0;
  z-index: 5;
  left: 0;
  right: 0;
}

.reasonApp__topCard--lead {
  position: relative;
  display: table;
  margin: 0px auto 0;
  padding: 4px 95px;
  color: #fff;
  font-size: 30px;
  background: #40b4e9;
  background: linear-gradient(90deg, #40b4e9 0%, #8e54e9 100%);
}

.reasonApp__topCard--lead:after {
  width: 14px;
  height: 12px;
  background-image: url(../image/icon/icon_arrow-down.svg);
  position: absolute;
  bottom: 0;
  margin: 0 auto -9px;
  left: 0;
  right: 0;
}

.reasonApp__topCard p {
  margin-top: 10px;
}

.reasonApp__topCard--lead2 {
  font-weight: bold;
  color: #fff;
  background: #333;
  display: table;
  margin: 20px auto 0;
  padding: 5px 100px;
}

.reasonApp__topCard--lead2:before {
  width: 100%;
  height: 1px;
  background: #333;
  margin: -4px auto 0;
  left: 0;
  right: 0;
  top: 0;
}

.reasonApp__topCard--lead2:after {
  width: 100%;
  height: 1px;
  background: #333;
  margin: 0 auto -4px;
  left: 0;
  right: 0;
  bottom: 0;
}

/*
.recommend {
	background-image: url(../image/bg/recommendBg.svg);
    background-position: top center;
    background-size: contain;
	&__box {
		background: $white;
		padding: 50px;
		margin-top: 50px;
	}
	&__case {
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;		
	}
	ul {
		width: 47%;
	}
	li {
		margin-bottom: 14px;
		border-bottom: 1px solid $ash;
		padding-left: 2em;
		line-height: 1.4;
		&:before {
			width: 32px;
		    height: 31px;
		    background-image: url(../image/icon/icon-check.svg);
		    position: absolute;
		    top: 0;
		    bottom: 0;
		    margin: auto;
		    left: 0;
		}
	}
}

.keyHead {
	background-image: url(../image/photo/session.webp);
	background-size: cover;
	background-repeat: no-repeat;
	width: 100%;
	height: 100%;
	padding: 70px 0 150px;
	&__title {
		font-size: 24px;
		color: $white;
		display: table;
		margin: auto;
		text-align: center;
		line-height: 1.6;
	}
	&__lead {
		color: $white;
		font-size: 24px;
		margin-top: 30px;
		span {
			font-size: 30px;
			font-weight: bold;
			color: $yellow;
			border-bottom: 6px solid $yellow;
			padding-bottom: 10px;
		}
	}
	p {
		font-size: 24px;
		line-height: 1.6;
		color: $white;
		margin-top: 50px;
	}
}

.key {
	&__topCard {
		background: $white;
	    width: 976px;
	    padding: 50px 40px;
	    text-align: center;
	    position: relative;
	    margin: -100px auto 0;
	    z-index: 5;
	    left: 0;
	    right: 0;
	    &--lead {
			position: relative;
			display: table;
			margin: 0px auto 0;
			padding: 4px 95px;
			color: #fff;
			font-size: 30px;
			background: #40b4e9;
			background: linear-gradient(90deg, #40b4e9 0%, #8e54e9 100%);
			&:after {
				width: 14px;
				height: 12px;
				background-image: url(../image/icon/icon_arrow-down.svg);
				position: absolute;
				bottom: 0;
			    margin: 0 auto -9px;
			    left: 0;
			    right: 0;
			}
	    }
	    &--title {
	    	font-size: 30px;
	    	color: $purple;
	    	font-weight: bold;
	    	margin-top: 34px;
	    }
	    p {
	    	margin-top: 10px;
	    }
	    &--lead2 {
	    	font-weight: bold;
	    	color: $white;
	    	background: $black;
	    	display: table;
	    	margin: 20px auto 0;
	    	padding: 5px 100px;
	    	&:before {
			    width: 100%;
			    height: 1px;
			    background: #333;
			    margin: -4px auto 0;
			    left: 0;
			    right: 0;
			    top: 0;
	    	}
	    	&:after {
			    width: 100%;
			    height: 1px;
			    background: #333;
			    margin: 0 auto -4px;
			    left: 0;
			    right: 0;
			    bottom: 0;
	    	}
	    }
	}
	table {
		margin: 20px auto 0;
	}
	th, td {
	    border: solid 1px #DDDEDE;
	    width: 150px;
	    padding: 17px 40px;
	    white-space: nowrap;
	}
	th {
		font-size: 16px;
		font-weight: bold;
		background: #DDDEDE;
	}
	td {
		font-size: 20px;
		font-weight: bold;
		span {
			font-size: 16px;
		}	
	}
	&__contents {
		padding: 100px 0;
		margin: 100px 0 0;
	}
}
*/
.authorHead {
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  padding: 50px 0;
  line-height: 1.4;
}

.author {
  padding: 0px 0 100px;
  margin-top: 70px;
  background-size: cover;
  background-image: url(../image/bg/authorBg.svg);
}

.author__wrap {
  background: #fff;
  border-radius: 20px;
  padding: 70px 40px;
}

.author__box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.author__box--img {
  width: 55%;
}

.author__box--text {
  width: 45%;
}

.author__box--text p {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0;
  display: table;
  border-bottom: 4px solid #40b4e9;
  -o-border-image: linear-gradient(to right, #40b4e9 0%, #8e54e9 100%);
  border-image: linear-gradient(to right, #40b4e9 0%, #8e54e9 100%);
  border-image-slice: 1;
  margin-bottom: 30px;
}

.author__box--text p span {
  font-size: 34px;
}

.author__box--text p span.kana {
  font-size: 18px;
}

.author__box--profile {
  font-size: 37px !important;
}

.author__desc {
  font-size: 16px;
  line-height: 2;
  margin-top: 40px;
}

.author__message {
  font-size: 37px !important;
}

.author__message--text {
  font-size: 24px;
  line-height: 1.8;
}

.author__message--lead {
  font-size: 30px;
  font-weight: 600;
  color: #039898;
}

.formArea {
  background: #F2F7FB;
}

.formArea__card {
  background: #fff;
  padding: 70px 150px;
}

.formArea__card--body {
  margin-top: 50px;
}

.formArea__card dl {
  padding-bottom: 20px;
}

.formArea__card dt {
  padding: 6px 0;
}

.formArea__card dt span {
  color: red;
}

form#mail_form input[type="text"], form#mail_form input[type="email"], form#mail_form input[type="tel"] {
  width: 100%;
  padding: 10px 2%;
  border: 1px solid #cccccc;
  border-radius: 3px;
  background: #fafafa;
  -webkit-appearance: none;
  font-size: 16px;
  font-family: inherit;
  line-height: normal;
}

form#mail_form textarea {
  display: block;
  width: calc( 100% - 4% - 2px);
  height: 200px;
  padding: 7px 2%;
  resize: vertical;
  border: 1px solid #cccccc;
  border-radius: 3px;
  background: #fafafa;
  -webkit-appearance: none;
  font-size: 16px;
  font-family: inherit;
  line-height: normal;
}

form#mail_form input[type="button"] {
  padding: 15px 125px;
  border: 1px solid #fff;
  border-radius: 50px;
  background: #0BDEFC;
  background: linear-gradient(90deg, #0BDEFC 0%, #004FAA 100%);
  font-size: 19px;
  font-weight: bold;
  color: #fff;
  font-family: inherit;
  -webkit-appearance: none;
  box-shadow: 0px 0px 14px rgba(0, 0, 0, 0.25);
  transition: .3s;
}

form#mail_form input[type="button"]:hover {
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
  .mtXS, .mtXSSp {
    margin-top: 4px !important;
  }
  .mtS, .mtSSp {
    margin-top: 8px !important;
  }
  .mtM, .mtMSp {
    margin-top: 16px !important;
  }
  .mtL, .mtLSp {
    margin-top: 32px !important;
  }
  .mtXL, .mtXLSp {
    margin-top: 64px !important;
  }
  .mbXS, .mbXSSp {
    margin-bottom: 4px !important;
  }
  .mbS, .mbSSp {
    margin-bottom: 8px !important;
  }
  .mbM, .mbMSp {
    margin-bottom: 16px !important;
  }
  .mbL, .mbLSp {
    margin-bottom: 32px !important;
  }
  .mbXL, .mbXLSp {
    margin-bottom: 64px !important;
  }
  .mlXS, .mlXSSp {
    margin-left: 4px !important;
  }
  .mlS, .mlSSp {
    margin-left: 8px !important;
  }
  .mlM, .mlMSp {
    margin-left: 16px !important;
  }
  .mlL, .mlLSp {
    margin-left: 32px !important;
  }
  .mlXL, .mlXLSp {
    margin-left: 64px !important;
  }
  .mrXS, .mrXSSp {
    margin-right: 4px !important;
  }
  .mrS, .mrSSp {
    margin-right: 8px !important;
  }
  .mrM, .mrMSp {
    margin-right: 16px !important;
  }
  .mrL, .mrLSp {
    margin-right: 32px !important;
  }
  .mrXL, .mrXLSp {
    margin-right: 64px !important;
  }
  .ptXS, .ptXSSp {
    padding-top: 4px !important;
  }
  .ptS, .ptSSp {
    padding-top: 8px !important;
  }
  .ptM, .ptMSp {
    padding-top: 16px !important;
  }
  .ptL, .ptLSp {
    padding-top: 32px !important;
  }
  .ptXL, .ptXLSp {
    padding-top: 64px !important;
  }
  .pbXS, .pbXSSp {
    padding-bottom: 4px !important;
  }
  .pbS, .pbSSp {
    padding-bottom: 8px !important;
  }
  .pbM, .pbMSp {
    padding-bottom: 16px !important;
  }
  .pbL, .pbLSp {
    padding-bottom: 32px !important;
  }
  .pbXL, .pbXLSp {
    padding-bottom: 64px !important;
  }
  .hideSp {
    display: none !important;
  }
  .textXS, .textXSSp {
    font-size: 1.3rem !important;
  }
  .textS, .textSSp {
    font-size: 1.4rem !important;
  }
  .textM, .textMSp {
    font-size: 1.8rem !important;
  }
  .textL, .textLSp {
    font-size: 2rem !important;
  }
  .textXL, .textXLSp {
    font-size: 2.2rem !important;
  }
  .textXXL, .textXXLSp {
    font-size: 2.4rem !important;
  }
  .textXXXL, .textXXXLSp {
    font-size: 3rem !important;
  }
  .taLSp {
    text-align: left !important;
  }
  .taCSp {
    text-align: center !important;
  }
  .taRSp {
    text-align: right !important;
  }
  .shadow {
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
  }
  .radius {
    border-radius: 8px;
  }
  .app--btn a {
    font-size: 18px;
    padding: 19px 30px 19px 24px;
  }
  .app--btn a:after {
    width: 9px;
    height: 14px;
    margin: auto 20px auto 0;
    background: no-repeat url(../image/icon/icon_right-purple-sp.svg);
  }
  .keyBtn {
    position: absolute;
    bottom: 0;
    margin: 0 8% 8%;
    left: 0;
    right: 0;
  }
  .taikenBtn {
    position: absolute;
    bottom: 0;
    margin: 0 auto 8%;
    left: 0;
    right: 0;
  }
  .diff_appBtn {
    position: absolute;
    bottom: 0;
    margin: 0 8% 18%;
    left: 0;
    right: 0;
  }
  .accordion a img {
    padding: 0 7%;
    margin-top: 10px;
    margin-bottom: 10px;
    box-shadow: none;
  }
  .ctaBtn a {
    padding: 12px 32px 12px 20px;
    font-size: 16px;
  }
  .ctaBtn a:after {
    width: 10px;
    height: 14px;
    margin: auto 14px auto 0;
  }
  .fLSp {
    float: left;
  }
  .fRSp {
    float: right;
  }
  .fBoxSp {
    margin-left: -4%;
  }
  .fAllSp {
    float: left;
    width: 96%;
    margin-left: 4%;
  }
  .f1of2Sp {
    float: left;
    width: 46%;
    margin-left: 4%;
  }
  .f1of3Sp {
    float: left;
    width: 29.3333%;
    margin-left: 4%;
  }
  .f2of3Sp {
    float: left;
    width: 62.6666%;
    margin-left: 4%;
  }
  .f1of4Sp {
    float: left;
    width: 21%;
    margin-left: 4%;
  }
  .f3of4Sp {
    float: left;
    width: 71%;
    margin-left: 4%;
  }
  .f1of5Sp {
    float: left;
    width: 16%;
    margin-left: 4%;
  }
  .f2of5Sp {
    float: left;
    width: 36%;
    margin-left: 4%;
  }
  .f3of5Sp {
    float: left;
    width: 56%;
    margin-left: 4%;
  }
  .f4of5Sp {
    float: left;
    width: 76%;
    margin-left: 4%;
  }
  .f1of6Sp {
    float: left;
    width: 12.6666%;
    margin-left: 4%;
  }
  .f5of6Sp {
    float: left;
    width: 79.3333%;
    margin-left: 4%;
  }
  .f1of7Sp {
    float: left;
    width: 10.2857%;
    margin-left: 4%;
  }
  .f2of7Sp {
    float: left;
    width: 24.5714%;
    margin-left: 4%;
  }
  .f3of7Sp {
    float: left;
    width: 38.8571%;
    margin-left: 4%;
  }
  .f4of7Sp {
    float: left;
    width: 53.1428%;
    margin-left: 4%;
  }
  .f5of7Sp {
    float: left;
    width: 67.4285%;
    margin-left: 4%;
  }
  .f6of7Sp {
    float: left;
    width: 81.7142%;
    margin-left: 4%;
  }
  .f1of8Sp {
    float: left;
    width: 8.5%;
    margin-left: 4%;
  }
  .f3of8Sp {
    float: left;
    width: 33.5%;
    margin-left: 4%;
  }
  .fLSp {
    float: left;
  }
  .fRSp {
    float: right;
  }
  .flexBoxSp {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxSp {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxSp,
  .contentBoxM, .contentBoxMSp,
  .contentBoxL, .contentBoxLSp {
    margin-left: 2.5% !important;
    margin-right: 2.5% !important;
  }
  article {
    padding: 46px 0 46px;
  }
  .cmnTtl__type1 {
    font-size: 22px;
    line-height: 1.4;
    padding: 0 12px 8px;
    border-bottom: 1px solid #8E54E9;
  }
  .cmnTtl__type3 {
    margin: 20px auto 0;
  }
  .marker {
    padding: 0 0px 4px;
  }
  .FixedFt .ctaBtn {
    width: 100%;
    padding: 0 12px;
    border-right: none;
    font-size: 17px;
  }
  .Footer__brandName {
    font-size: 1.8rem !important;
  }
  .Footer {
    padding-top: 24px;
  }
  .FtSMap__menu {
    width: 100%;
  }
  .FtSMap {
    padding: 0px 24px 12px;
  }
  .Footer__copyYear {
    font-size: 1.3rem !important;
    letter-spacing: 0.06em;
    line-height: 40px;
  }
  .Header__brandName {
    height: 60px;
  }
  .Header__brandName a {
    margin-left: 20px;
    width: 160px;
    height: 32px;
  }
  .top_logo_assort {
    margin: 20px 7%;
  }
  .mainVisual__btn {
    width: 85%;
    margin-bottom: 24px;
  }
  .swiper {
    position: relative;
    overflow: hidden;
    max-height: 170px;
    min-height: 110px;
  }
  .sessionUp, .sessionBottom {
    position: relative;
  }
  .sessionUp__btn, .sessionBottom__btn {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto 64px;
    display: table;
    border-radius: 50px;
  }
  .formArea__card {
    padding: 30px 28px;
    margin: 0 5px;
  }
  .formArea__card--body {
    margin-top: 20px;
  }
  .formArea__card dl {
    padding-bottom: 20px;
  }
  .formArea__card dt {
    padding: 6px 0;
  }
  .formArea__card dt span {
    color: red;
  }
}

@media screen and (min-width: 768px) {
  .mtXS, .mtXSPc {
    margin-top: 20px !important;
  }
  .mtS, .mtSPc {
    margin-top: 30px !important;
  }
  .mtM, .mtMPc {
    margin-top: 40px !important;
  }
  .mtL, .mtLPc {
    margin-top: 50px !important;
  }
  .mtXL, .mtXLPc {
    margin-top: 70px !important;
  }
  .mtXXL, .mtXXLPc {
    margin-top: 100px !important;
  }
  .mbXS, .mbXSPc {
    margin-bottom: 20px !important;
  }
  .mbS, .mbSPc {
    margin-bottom: 30px !important;
  }
  .mbM, .mbMPc {
    margin-bottom: 40px !important;
  }
  .mbL, .mbLPc {
    margin-bottom: 50px !important;
  }
  .mbXL, .mbXLPc {
    margin-bottom: 70px !important;
  }
  .mbXXL, .mbXXLPc {
    margin-bottom: 100px !important;
  }
  .mlXS, .mlXSPc {
    margin-left: 20px !important;
  }
  .mlS, .mlSPc {
    margin-left: 30px !important;
  }
  .mlM, .mlMPc {
    margin-left: 40px !important;
  }
  .mlL, .mtlPc {
    margin-left: 50px !important;
  }
  .mlXL, .mlXLPc {
    margin-left: 70px !important;
  }
  .mrXS, .mrXSSPc {
    margin-right: 20px !important;
  }
  .mrS, .mrSPc {
    margin-right: 30px !important;
  }
  .mrM, .mrMPc {
    margin-right: 40px !important;
  }
  .mrL, .mrLPc {
    margin-right: 50px !important;
  }
  .mrXL, .mrXLPc {
    margin-right: 70px !important;
  }
  .ptXS, .ptXSPc {
    padding-top: 20px !important;
  }
  .ptS, .ptSPc {
    padding-top: 30px !important;
  }
  .ptM, .ptMPc {
    padding-top: 40px !important;
  }
  .ptL, .ptLPc {
    padding-top: 50px !important;
  }
  .ptXL, .ptXLPc {
    padding-top: 70px !important;
  }
  .pbXS, .pbXSPc {
    padding-bottom: 20px !important;
  }
  .pbS, .pbSPc {
    padding-bottom: 30px !important;
  }
  .pbM, .pbMPc {
    padding-bottom: 40px !important;
  }
  .pbL, .pbLPc {
    padding-bottom: 50px !important;
  }
  .pbXL, .pbXLPc {
    padding-bottom: 70px !important;
  }
  .hidePc {
    display: none !important;
  }
  .textXS, .textXSPc {
    font-size: 1.4rem !important;
  }
  .textS, .textSPc {
    font-size: 1.6rem !important;
  }
  .textM, .textMPc {
    font-size: 2.4rem !important;
  }
  .textL, .textLPc {
    font-size: 2.7rem !important;
  }
  .textXL, .textXLPc {
    font-size: 3rem !important;
  }
  .textXXL, .textXXLPc {
    font-size: 3.7rem !important;
  }
  .textXXXL, .textXXXLPc {
    font-size: 4rem !important;
  }
  .taLPc {
    text-align: left !important;
  }
  .taCPc {
    text-align: center !important;
  }
  .taRPc {
    text-align: right !important;
  }
  .wrapper {
    min-width: 1200px;
  }
  .fLPc {
    float: left;
  }
  .fRPc {
    float: right !important;
  }
  .fBoxPc {
    margin-left: -4%;
  }
  .fAllPc {
    float: left;
    width: 96%;
    margin-left: 4%;
  }
  .f1of2Pc {
    float: left;
    width: 46%;
    margin-left: 4%;
  }
  .f1of3Pc {
    float: left;
    width: 29.3333%;
    margin-left: 4%;
  }
  .f2of3Pc {
    float: left;
    width: 62.6666%;
    margin-left: 4%;
  }
  .f1of4Pc {
    float: left;
    width: 21%;
    margin-left: 4%;
  }
  .f3of4Pc {
    float: left;
    width: 71%;
    margin-left: 4%;
  }
  .f1of5Pc {
    float: left;
    width: 16%;
    margin-left: 4%;
  }
  .f2of5Pc {
    float: left;
    width: 36%;
    margin-left: 4%;
  }
  .f3of5Pc {
    float: left;
    width: 56%;
    margin-left: 4%;
  }
  .f4of5Pc {
    float: left;
    width: 76%;
    margin-left: 4%;
  }
  .f1of6Pc {
    float: left;
    width: 12.6666%;
    margin-left: 4%;
  }
  .f5of6Pc {
    float: left;
    width: 79.3333%;
    margin-left: 4%;
  }
  .f1of7Pc {
    float: left;
    width: 10.2857%;
    margin-left: 4%;
  }
  .f2of7Pc {
    float: left;
    width: 24.5714%;
    margin-left: 4%;
  }
  .f3of7Pc {
    float: left;
    width: 38.8571%;
    margin-left: 4%;
  }
  .f4of7Pc {
    float: left;
    width: 53.1428%;
    margin-left: 4%;
  }
  .f5of7Pc {
    float: left;
    width: 67.4285%;
    margin-left: 4%;
  }
  .f6of7Pc {
    float: left;
    width: 81.7142%;
    margin-left: 4%;
  }
  .f1of8Pc {
    float: left;
    width: 9.5%;
    margin-left: 4%;
  }
  .f3of8Pc {
    float: left;
    width: 33.5%;
    margin-left: 4%;
  }
  .fLPc {
    float: left;
  }
  .fRPc {
    float: right !important;
  }
  .flexBoxPc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .gridBoxPc {
    display: -ms-grid;
    display: grid;
  }
  .contentBox, .contentBoxPc {
    width: 976px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .contentBoxM, .contentBoxMPc {
    width: 900px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .contentBoxL, .contentBoxLPc {
    width: 1000px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0;
  }
  .cmnTtl__type2 {
    font-size: 40px;
  }
  .cmnTtl__type4 {
    font-size: 30px;
    line-height: 1.3;
  }
  .Footer__brandName {
    font-size: 1.6rem !important;
  }
  .FtSMap {
    padding: 40px 0 6px;
  }
  .Footer__copyYear {
    width: 1200px;
    margin: 0 auto;
    font-size: 1.4rem !important;
    letter-spacing: 0.05em;
    line-height: 56px;
  }
  #header {
    height: 76px;
    min-width: 1200px;
  }
  .Header__brandName {
    float: left;
    height: 76px;
  }
  .Header__brandName a {
    width: 200px;
    height: 40px;
    margin-left: 30px;
  }
  .GNav {
    width: 976px;
    margin: auto;
    position: relative;
  }
  .GNav__menu {
    display: block;
    width: 100%;
  }
  .GNav__menu .mainMenu {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center;
    height: 76px;
  }
  .GNav__menu .mainMenu__list {
    text-align: center;
    color: #fff;
    letter-spacing: 0;
  }
  .GNav__menu .mainMenu__list a {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
  }
}

/*# sourceMappingURL=style.css.map */
