@charset "UTF-8";
/* CSS Document */
/* contents---------------
	 1.Reset
	 2.Base
	 3.Layout
	 4.Common
	 5.Page
	 6.Script
		------------ */
/*----------------------------------------------------------
	reset
--------------------------------------------------------- */
@import url("fonts/style.css");
body, dl, dt, dd, ul, li, h1, h2, h3, h4, form, p, th, td, input, textarea, select {
  margin: 0px;
  padding: 0px;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-weight: normal;
}

img {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: top;
}

ul, dl {
  list-style-type: none;
}

/*----------------------------------------------------------
	Base
--------------------------------------------------------- */
body {
  margin: 0 auto;
}

@media screen and (max-width: 750px) {
  * {
	-webkit-text-size-adjust: 100%;
  }
}
/* sp */
* {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  word-break: normal;
}

.flex {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 750px) {
  * {
	word-break: normal;
  }
}
/* sp */
img {
  max-width: 100%;
  height: auto;
  width: auto;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

p {
  line-height: 1.8;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a img:hover {
  opacity: 0.7;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

strong {
  font-weight: bold;
}

small {
  font-size: 85%;
  line-height: 1.1;
}

.spDisp {
  display: none;
}

/* sp */
@media screen and (min-width: 851px) {
  a[href^="tel:"] {
	pointer-events: none;
  }

  br.sp {
	display: none;
  }

  br.pc {
	display: block;
  }
}
.nondisp {
  display: none !important;
}

/*----------------------------------------------------------
	Layout
--------------------------------------------------------- */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  z-index: -10;
  font-size: 15px;
  /* sp */
}
/* ゆうストレージのみ対応 */
@media screen and (max-width: 750px) {
  .yusuto footer .pagetop a {
    z-index: 101;
  }
}

/*----------------------------------------------------------
	Common
--------------------------------------------------------- */
header.top {
  z-index: 102;
}

footer {
  z-index: 1;
}

.wrapper #path-box {
  position: relative;
  z-index: 101;
}

.contWrap {
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
  animation: fadeIn 2s ease 0s 1 normal;
}

#sp-nav-toggle, #sp-global-nav {
  display: none;
}

#pc-side {
  display: none;
  position: fixed;
  right: 0;
  z-index: 102;
  bottom: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 0 15px;
}
#pc-side ul {
  display: flex;
  justify-content: center;
  width: 940px;
  margin: auto;
}
#pc-side ul li {
  margin: 15px;
}
.tuiju-txt {
  color: #FFF;
  width: 940px;
  margin: auto;
  text-align: center;
}
.tuiju-txt span {
  display: inline-block;
  text-align: left;
}


#pc-nav {
  position: fixed;
  left: 0;
  padding: 0 2vw;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
	  -ms-flex-pack: end;
		  justify-content: end;
      flex-direction: column;
  margin: auto;
  top: 0;
  bottom: 10px;
  z-index: 100;
  background: rgba(255, 255, 255, 0.5);
  max-width: 280px;
}
#pc-nav nav ul li {
  margin: 0.8em 0;
  font-size: 14px;
  font-family: "Noto Sans Japanese", sans-serif;
}
#pc-nav nav ul li a:before {
  font-family: "icomoon";
  content: "\e900";
  margin-right: 0.5em;
  color: #bbbbbc;
}
#pc-nav nav ul li a:hover {
  text-decoration: none;
  color: #CC0000;
}
#pc-nav nav ul li.current {
  font-weight: bold;
}
#pc-nav nav ul li.current a:before {
  color: #ff8f8f;
}
#pc-nav .pc-nav-yohaku {
  padding-left: 21px;
}
#pc-nav .pc-nav-btn ul li {
  margin-bottom: 10px;
}
#pc-nav .pc-nav-btn ul li img {
  height: 55px;
}
#pc-nav .pc-nav-btn p {
  line-height: 1.5;
}

/* tablet */
@media all and (min-width: 751px) and (max-width: 1290px) {
  #pc-nav {
	position: relative;
	background: none;
	left: 0;
  max-width: initial;
  }
  #pc-nav nav ul {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	margin: 20px 0;
  }
  #pc-nav nav ul li {
	-ms-flex-preferred-size: 48%;
		flex-basis: 48%;
	max-width: 48%;
	margin: 0.4em 0;
  }
  #pc-nav .pc-nav-br {
    display: none;
  }
  #pc-nav .pc-nav-yohaku {
    padding-left: 0;
  }
  #pc-nav .pc-nav-btn {
    display: none;
  }
  #pc-side {
    display: block;
  }
  #pc-side ul {
    width: 100%;
  }
  .tuiju-txt {
    width: 100%;
  }
}
/* tablet */
@media screen and (max-width: 750px) {
  #pc-nav {
	display: none;
  }
  #pc-side {
    display: block;
  }
  #pc-side ul {
    width: 100%;
  }
  #pc-side ul li {
    margin: 10px 15px 4px;
  }
  .tuiju-txt {
    width: 100%;
  }
  .tuiju-txt span {
    line-height: 1.4;
  }
  .wrapper #path-box {
    z-index: 1;
  }

  #sp-nav-toggle {
	display: block;
	position: fixed;
	top: 62px;
	right: 17px;
	height: 42px;
	cursor: pointer;
	-webkit-transition: 0.3s;
	transition: 0.3s;
  }
  #sp-nav-toggle > div {
	position: relative;
	width: 36px;
  }
  #sp-nav-toggle > div:before {
	font-family: "icomoon";
	content: "\e904";
	font-size: 42px;
	color: #CC0000;
	background: rgba(248, 238, 0, 0.8);
	padding: 4px 3px 3px;
	border-radius: 3px;
	line-height: 42px;
  }
  #sp-nav-toggle span {
	opacity: 0;
  }
  #sp-nav-toggle span {
	width: 100%;
	height: 4px;
	border-radius: 5px;
	left: 0;
	display: block;
	background: #CC0000;
	position: absolute;
	-webkit-transition: top 0.5s ease, -webkit-transform 0.3s ease-in-out;
	transition: top 0.5s ease, -webkit-transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out, top 0.5s ease;
	transition: transform 0.3s ease-in-out, top 0.5s ease, -webkit-transform 0.3s ease-in-out;
  }
  #sp-nav-toggle span:nth-child(1) {
	top: 0;
  }
  #sp-nav-toggle span:nth-child(2) {
	top: 12px;
  }
  #sp-nav-toggle span:nth-child(3) {
	top: 24px;
  }

  .open #sp-nav-toggle {
	top: 15px;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	z-index: 999;
  }
  .open #sp-nav-toggle div:before {
	content: none;
  }
  .open #sp-nav-toggle span {
	background: #FFF;
	opacity: 1;
	-webkit-box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
			box-shadow: 0px 0px 16px 0px rgba(0, 0, 0, 0.5);
  }
  .open #sp-nav-toggle span:nth-child(1) {
	top: 15px;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
  }
  .open #sp-nav-toggle span:nth-child(2) {
	top: 15px;
	width: 0;
	left: 50%;
  }
  .open #sp-nav-toggle span:nth-child(3) {
	top: 15px;
	-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
  }

  /* z-index */
  #sp-nav-toggle {
	z-index: 99;
  }

  #container {
	z-index: 900;
  }

  #sp-global-nav nav {
	z-index: 997;
  }

  #sp-global-nav {
	background: #CC0000;
	color: #fff;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 990;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
		-ms-flex-direction: column;
			flex-direction: column;
	-webkit-box-pack: center;
		-ms-flex-pack: center;
			justify-content: center;
	padding-left: 0;
	opacity: 0;
	z-index: -900;
  }

  .open #sp-global-nav {
	-webkit-animation: fadeIn 0.7s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
			animation: fadeIn 0.7s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
	z-index: 900;
  }

  @-webkit-keyframes fadeIn {
	0% {
	  opacity: 0;
	}
	100% {
	  opacity: 1;
	}
  }

  @keyframes fadeIn {
	0% {
	  opacity: 0;
	}
	100% {
	  opacity: 1;
	}
  }
  .wrapper #path-box {
	padding-right: 60px;
  }

  #sp-global-nav {
	padding: 5vh 5vw;
  }
  #sp-global-nav .inner {
	background: #FFF;
	border-radius: 12px;
	padding: 7vw 8.5vw;
  }
  #sp-global-nav .inner .btnArea {
	margin-bottom: 2vh;
  }
  #sp-global-nav .inner .btnArea * > a {
	display: block;
	border-radius: 5px;
  }
  #sp-global-nav .inner .btnArea .inquiry {
	margin-bottom: 1.5vh;
  }
  #sp-global-nav .inner .btnArea .cmt {
	color: #4d4a4a;
	font-size: 0.85em;
	margin-top: 0.7em;
  }
  #sp-global-nav .inner nav {
	margin-bottom: 2vh;
  }
  #sp-global-nav .inner nav ul li {
	border-bottom: 1px solid #CC0000;
  }
  #sp-global-nav .inner nav ul li a {
	color: #CC0000;
	text-decoration: none;
	font-size: 2vh;
	padding: 0.7em 0;
	font-family: "Noto Sans Japanese", sans-serif;
	display: block;
  }
  #sp-global-nav .inner nav ul li:last-child {
	border-bottom: 0;
  }
}
@media screen and (max-width: 750px) and (orientation: landscape) {
  #sp-global-nav .inner {
	padding: 5vw;
  }
  #sp-global-nav .inner .btnArea {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
  }
  #sp-global-nav .inner .btnArea div {
	-ms-flex-preferred-size: 48%;
		flex-basis: 48%;
  }
  #sp-global-nav .inner nav ul {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	-ms-flex-wrap: wrap;
		flex-wrap: wrap;
  }
  #sp-global-nav .inner nav ul li {
	-ms-flex-preferred-size: 48%;
		flex-basis: 48%;
  }
  #sp-global-nav .inner nav ul li a {
	font-size: 2.5vw;
  }
  #sp-global-nav .inner nav ul li:last-child {
	border-bottom: 1px solid #CC0000;
  }
}
/* sp */
/*----------------------------------------------------------
	common module
--------------------------------------------------------- */
.btnimg img {
  height: 70px;
}

span.border {
  background: url(../img/line_yellow.png) repeat-x bottom left;
  padding-bottom: 5px;
}

hr.type1 {
  background: url(../img/hr01.png) repeat-x;
  background-size: 100% auto;
  height: 12px;
  border: none;
}

.btnArea {
  margin-bottom: 0;
}
.btnArea .btnimg {
  margin-bottom: 16px;
}
.btnArea + .notes-s {
  margin: 10px auto 8vh;
  font-size: 90%;
}

/*----------------------------------------------------------
	Page
--------------------------------------------------------- */
.bg_grid {
  background: url(../img/bg_grid.png);
}

.bg_dot {
  background: url(../img/bg_dot.png);
}

section .innerwidth {
  max-width: 940px;
  margin: auto;
}

@media all and (min-width: 751px) and (max-width: 1150px) {
  section .innerwidth {
	padding: 0 0;
  }
}
@media screen and (max-width: 750px) {
  section .innerwidth {
	padding: 0 0;
  }
}
/* sp */
/* top-lp */
/*splide*/
.splide__pagination {
  display: none!important;
}
section#kv1 {
  /* sp */
}
section#kv1 .inner {
  max-width: 55vh;
  margin: auto;
  position: relative;
  padding: 5vh 0;
}
section#kv1 .inner .lead {
  margin-bottom: 7vh;
}
section#kv1 .inner .lead .lead-text1 {
  font-size: 40px;
  font-weight: bold;
  color: #b40000;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
section#kv1 .inner .illust {
  position: relative;
}
section#kv1 .inner .illust .il_family {
  position: absolute;
  bottom: 3.7vh;
  left: 8.8vh;
}
section#kv1 .inner .illust .il_family img {
  max-height: 22vh;
}
section#kv1 .inner .illust .il_obj01 {
  position: absolute;
  bottom: 18vh;
  left: 7vh;
}
section#kv1 .inner .illust .il_obj01 img {
  max-height: 5vh;
}
section#kv1 .inner .illust .il_obj02 {
  position: absolute;
  bottom: 18vh;
  right: 15.5vh;
}
section#kv1 .inner .illust .il_obj02 img {
  max-height: 7.5vh;
}
section#kv1 .inner .illust .il_obj03 {
  position: absolute;
  bottom: 12.8vh;
  right: 12.5vh;
}
section#kv1 .inner .illust .il_obj03 img {
  max-height: 5vh;
}
section#kv1 .inner .illust .il_obj04 {
  position: absolute;
  bottom: 5.2vh;
  right: 14vh;
}
section#kv1 .inner .illust .il_obj04 img {
  max-height: 6.8vh;
}
section#kv1 .inner .illust .il_obj05 {
  position: absolute;
  bottom: 4vh;
  right: 16.5vh;
}
section#kv1 .inner .illust .il_obj05 img {
  max-height: 2.5vh;
}
section#kv1 .inner .illust .il_obj06 {
  position: absolute;
  bottom: 4.3vh;
  right: 21.7vh;
}
section#kv1 .inner .illust .il_obj06 img {
  max-height: 3vh;
}
section#kv1 .inner .illust .il_obj07 {
  position: absolute;
  bottom: 1.7vh;
  right: 22.3vh;
}
section#kv1 .inner .illust .il_obj07 img {
  max-height: 1.5vh;
}
section#kv1 .inner .illust .il_obj08 {
  position: absolute;
  bottom: 4.9vh;
  right: 26.3vh;
}
section#kv1 .inner .illust .il_obj08 img {
  max-height: 3vh;
}
section#kv1 .inner .illust .il_obj09 {
  position: absolute;
  bottom: 2.6vh;
  right: 26.7vh;
}
section#kv1 .inner .illust .il_obj09 img {
  max-height: 2.8vh;
}
section#kv1 .inner .illust .cmt {
  position: absolute;
  right: -2.5vh;
  top: 15vh;
}
section#kv1 .inner .illust .cmt img {
  max-height: 13vh;
}
section#kv1 .inner .logo {
  text-align: center;
  margin: 7vh auto 0;
}
@media screen and (max-width: 750px) {
  section#kv1 .inner {
	max-width: 750px;
	padding: 38px 5vw 0;
  }
  section#kv1 .inner .lead .lead-text1 {
    font-size: 28px;
  }
  section#kv1 .inner .lead {
    margin-bottom: 3vh;
  }
  section#kv1 .inner .logo {
    margin: 3vh auto 0;
  }
  section#kv1 .inner .illust {
	position: relative;
  }
  section#kv1 .inner .illust .il_family {
	position: absolute;
	bottom: 5.7vw;
	left: 15.5vw;
  }
  section#kv1 .inner .illust .il_family img {
	max-width: 40vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj01 {
	position: absolute;
	bottom: 27.7vw;
	left: 11.8vw;
  }
  section#kv1 .inner .illust .il_obj01 img {
	max-width: 7vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj02 {
	position: absolute;
	bottom: 28vw;
	right: 23.2vw;
  }
  section#kv1 .inner .illust .il_obj02 img {
	max-width: 9vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj03 {
	position: absolute;
	bottom: 19vw;
	right: 18.7vw;
  }
  section#kv1 .inner .illust .il_obj03 img {
	max-width: 5.8vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj04 {
	position: absolute;
	bottom: 8.4vw;
	right: 22.4vw;
  }
  section#kv1 .inner .illust .il_obj04 img {
	max-width: 9.4vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj05 {
	position: absolute;
	bottom: 6.1vw;
	right: 25.87vw;
  }
  section#kv1 .inner .illust .il_obj05 img {
	max-width: 6.3vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj06 {
	position: absolute;
	bottom: 6.17vw;
	right: 32.67vw;
  }
  section#kv1 .inner .illust .il_obj06 img {
	max-width: 6vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj07 {
	position: absolute;
	bottom: 1.5vw;
	right: 34.3vw;
  }
  section#kv1 .inner .illust .il_obj07 img {
	max-width: 4.7vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj08 {
	position: absolute;
	bottom: 7.8vw;
	right: 40.57vw;
  }
  section#kv1 .inner .illust .il_obj08 img {
	max-width: 6vw;
	max-height: none;
  }
  section#kv1 .inner .illust .il_obj09 {
	position: absolute;
	bottom: 4vw;
	right: 40.97vw;
  }
  section#kv1 .inner .illust .il_obj09 img {
	max-width: 5.6vw;
	max-height: none;
  }
  section#kv1 .inner .illust .cmt {
	position: absolute;
	right: -1.7vw;
	top: 25vw;
  }
  section#kv1 .inner .illust .cmt img {
	max-width: 21vw;
	max-height: none;
  }
}
section#kv2 {
  padding: 60px 0;
  /* sp */
}
section#kv2 .inner {
  max-width: 55vh;
  margin: auto;
  position: relative;
}
section#kv2 .inner .lead {
  margin: 6vh 0;
}
section#kv2 .inner .lead img {
  max-height: 25vh;
}
section#kv2 .inner .boy {
  position: absolute;
  right: 0.5vh;
  top: 19vh;
}
section#kv2 .inner .boy img {
  max-height: 37vh;
}
section#kv2 .inner .il_obj01 img {
  max-height: 18vh;
}
section#kv2 .inner .il_obj02 {
  position: absolute;
  top: 0;
  left: 12vh;
}
section#kv2 .inner .il_obj02 img {
  max-height: 18vh;
}
section#kv2 .inner .il_obj03 {
  position: absolute;
  top: 0;
  right: 12vh;
}
section#kv2 .inner .il_obj03 img {
  max-height: 18vh;
}
section#kv2 .inner .il_obj04 {
  position: absolute;
  top: 0;
  right: 0;
}
section#kv2 .inner .il_obj04 img {
  max-height: 18vh;
}
section#kv2 .inner .il_obj05 {
  margin-bottom: 3vh;
}
section#kv2 .inner .il_obj05 img {
  max-height: 14vh;
}
section#kv2 .inner .il_obj06 img {
  max-height: 11.7vh;
}
section#kv2 .inner .il_obj07 {
  position: absolute;
  bottom: 0;
  left: 14vh;
}
section#kv2 .inner .il_obj07 img {
  max-height: 11.7vh;
}
section#kv2 .inner .il_obj08 {
  position: absolute;
  bottom: 0;
  right: 23vh;
}
section#kv2 .inner .il_obj08 img {
  max-height: 16vh;
}
section#kv2 .inner .cmt {
  position: absolute;
  right: 21vh;
  bottom: 17vh;
}
section#kv2 .inner .cmt img {
  max-height: 12.5vh;
}
section#kv2 .inner .logo {
  position: absolute;
  bottom: 0;
  right: 0;
}
section#kv2 .inner .logo img {
  max-height: 20.5vh;
}
@media screen and (max-width: 750px) {
  section#kv2 {
    padding: 0;
  }
  section#kv2 .innerwidth {
    padding: 40px 5vw;
  }
  section#kv2 .inner {
	max-width: 750px;
  }
  section#kv2 .inner .lead {
	margin: 7vw 4vw 8vw;
  }
  section#kv2 .inner .lead .lead-text2 {
    font-size: 28px;
  }
  section#kv2 .inner .lead img {
	max-width: 54vw;
	max-height: none;
  }
  section#kv2 .inner .boy {
	position: absolute;
	right: 1vw;
	top: 32vw;
  }
  section#kv2 .inner .boy img {
	max-width: 33vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj01 img {
	max-width: 23.5vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj02 {
	position: absolute;
	top: 0;
	left: 20vw;
  }
  section#kv2 .inner .il_obj02 img {
	max-width: 27vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj03 {
	position: absolute;
	top: 0;
	right: 20vw;
  }
  section#kv2 .inner .il_obj03 img {
	max-width: 19vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj04 {
	position: absolute;
	top: 0;
	right: 0;
  }
  section#kv2 .inner .il_obj04 img {
	max-width: 19.5vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj05 {
	margin-bottom: 4vw;
  }
  section#kv2 .inner .il_obj05 img {
	max-width: 33.5vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj06 img {
	max-width: 21vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj07 {
	position: absolute;
	bottom: 0;
	left: 23vw;
  }
  section#kv2 .inner .il_obj07 img {
	max-width: 16vw;
	max-height: none;
  }
  section#kv2 .inner .il_obj08 {
	position: absolute;
	bottom: 0;
	right: 38vw;
  }
  section#kv2 .inner .il_obj08 img {
	max-width: 12vw;
	max-height: none;
  }
  section#kv2 .inner .cmt {
	position: absolute;
	right: 34vw;
	bottom: 31vw;
  }
  section#kv2 .inner .cmt img {
	max-width: 18vw;
	max-height: none;
  }
  section#kv2 .inner .logo {
	position: absolute;
	bottom: 0;
	right: 0;
  }
  section#kv2 .inner .logo img {
	max-width: 33vw;
	max-height: none;
  }
}
section#about {
  padding-top: 50px;
  /* sp */
  /* nonsp */
  /* tablet */
  /* tablet */
  /* sp */
}
section#about h2.company {
  text-align: center;
  margin-bottom: 10px;
}
section#about h2.company img {
  height: 55px;
}
section#about h2.about {
  text-align: center;
  margin-bottom: 30px;
}
section#about h2.about img {
  height: 77px;
}
section#about .video {
  margin-bottom: 40px;
  text-align: center;
}
section#about .video video {
  width: 70%;
  border: 4px solid #CC0000;
  border-radius: 5px;
}
section#about .lead {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 500;
  font-size: 1.2em;
  line-height: 1.9;
  color: #4d4a4a;
  text-align: center;
  margin-bottom: 1.5em;
}
section#about .cmt {
  border: 4px solid #d3d3d3;
  text-align: center;
  padding: 0.7em;
  font-size: 1.1em;
  font-family: "Noto Sans Japanese", sans-serif;
  margin-bottom: 50px;
}
h2.h2Border {
  color: #CC0000;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.4em;
  text-indent: 0.4em;
  background: url(../img/line_pink.png) no-repeat bottom center;
  padding-bottom: 12px;
}
h2.h2Border.beige {
  color: #dfc2a6;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.4em;
  text-indent: 0.4em;
  background: url(../img/line_beige.png) no-repeat bottom center;
  padding-bottom: 12px;
}
h2.h2Border.blue {
  color: #284396;
  text-align: center;
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.1rem;
  text-indent: 0;
  background: url(../img/line_blue2.png) no-repeat bottom center;
  padding-bottom: 12px;
}

@media screen and (max-width: 750px) {
  section#about {
    padding-top: 20px;
  }
  section#about .video {
	max-width: 80%;
	margin: 0 auto 2vh;
  }
  section#about .baseinfo {
	padding: 0 4%;
  }
  section#about h2.about {
    margin-bottom: 10px;
  }
  section#about h2.about img {
	height: auto;
  }
  section#about .lead {
	font-size: 1em;
	font-weight: bold;
	margin-bottom: 1.1em;
  }
  section#about .cmt {
	font-size: 0.9em;
	margin-bottom: 6vh;
  }
  section#about .video video {
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
    section#about h2.company img {
      height: 40px;
  }
}


section#howto {
  margin-bottom: 90px;
  padding-top: 0;
}
section#howto .tabBoxArea {
  margin-top: 20px;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab {
  padding: 0;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li {
  display: inline-block;
  font-size: 22px;
  padding: 1em 0 .9em;
  position: relative;
  color: #fff;
  text-align: center;
  z-index: 1;
  letter-spacing: 0.17em;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li img {
  margin: auto;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  -webkit-transform: scaleY(1) perspective(0.6em) rotateX(1deg);
		  transform: scaleY(1) perspective(0.6em) rotateX(1deg);
  -webkit-transform-origin: bottom;
		  transform-origin: bottom;
  border-radius: 5px 5px 0 0;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li, section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.active {
  background: none;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li:hover {
  cursor: default;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.myself {
  margin-right: 0;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.myself::before {
  background: #CC0000;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li a span::after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 11px;
  background-image: url(../img/sankaku.png);
  background-repeat: no-repeat;
  background-size: contain;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.important {
  color: #FFF;
}
section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.important::before {
  background: #284396;
}
section#howto .tabBoxArea.spTab .tab-wrap:after {
  content: none;
}
section#howto .tabBoxArea.spTab .tab_cont {
  padding-top: 0;
}
section#howto .tabBoxArea.spTab .tab_cont .section {
  color: #FFF;
  font-family: "Noto Sans Japanese", sans-serif;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner {
  background: #FFF;
  border-radius: 8px;
  padding: 1.3vw;
  font-size: 1.1em;
  margin-bottom: 6px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner p {
  color: #4d4a4a;
  font-size: 1.15em;
  font-weight: 600;
  margin-bottom: 1.5em;
  font-family: "Noto Sans Japanese", sans-serif;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li {
  text-indent: -1.2em;
  border-bottom: 2px dotted #CC0000;
  padding: 18px 0 18px 1.2em;
  position: relative;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li:before {
  font-family: "icomoon";
  content: "\e903";
  margin-right: 0.3em;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li sup {
  font-size: 0.6em;
  margin-left: -0.5em;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li img {
  position: absolute;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic01 {
  right: 10px;
  top: -15px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic02 {
  right: 20px;
  top: 25px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic03 {
  right: 10px;
  top: -35px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic04 {
  right: 20px;
  bottom: 25px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li:last-child {
  border-bottom: none;
}
section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li:first-child {
  padding-top: 0;
}
section#howto .tabBoxArea.spTab .tab_cont .section ul.notice li {
  font-size: 0.95em;
  padding-left: 1.2em;
  text-indent: -1.2em;
}
section#howto .tabBoxArea.spTab .tab_cont .section ul.notice li:before {
  content: "※";
  margin-right: 0.2em;
}
section#howto .tabBoxArea.spTab .tab_cont .section .check {
  text-align: center;
}
section#howto .tabBoxArea.spTab .tab_cont .section .check .head {
  margin: 34px auto 18px;
}
section#howto .tabBoxArea.spTab .tab_cont .section .check .btn {
  margin-bottom: 30px;
}
section#howto .tabBoxArea.spTab .tab_cont .myself {
  background: #CC0000;
  border-radius: 0 0 0 15px;
}
section#howto .tabBoxArea.spTab .tab_cont .myself .inner {
  color: #CC0000;
}
section#howto .tabBoxArea.spTab .tab_cont .important {
  background: #284396;
  border-radius: 0 0 15px 0;
}
section#howto .tabBoxArea.spTab .tab_cont .important .inner {
  color: #284396;
}
section#howto .tabBoxArea.spTab .tab_cont .important .inner p {
  letter-spacing: -0.05em;
}
section#howto .tabBoxArea.spTab .tab_cont .important .inner ul.point li {
  border-color: #284396;
  padding: 30px 0 39px 1.2em;
}
@media screen and (min-width: 751px) {
  section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.myself {
	margin-right: 0;
  }
  section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li.important {
	color: #FFF;
  }
  section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li:hover {
	opacity: 1;
  }
  section#howto .tabBoxArea.spTab .tab-wrap:after {
	content: none;
  }
  section#howto .tabBoxArea.spTab .tab_cont {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section {
	height: auto;
	overflow: visible;
	opacity: 1;
	color: #FFF;
	padding: 15px 30px 150px 30px;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner {
	font-size: 1.1em;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner p {
	font-size: 1.1em;
  }
  section#howto .tabBoxArea.spTab .tab_cont .adviser {
	position: absolute;
	bottom: 40px;
	margin: auto;
	left: 0;
	right: 0;
	width: 507px;
  }
}
@media all and (min-width: 751px) and (max-width: 1290px) {
  section#howto .tabBoxArea.spTab .tab_cont .section {
	padding: 15px 3.5vw 150px 3.5vw;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner {
	font-size: calc(10px + 0.3vw);
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner p {
	font-size: calc(11.5px + 0.3vw);
  }
}
@media screen and (max-width: 750px) {
  section#howto {
    padding: 0 0 40px;
    margin-bottom: 0;
  }  
  section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li {
	text-align: center;
  padding: .8em 0 1em;
}  
  section#howto .tabBoxArea.spTab .tab-wrap ul.nav-tab li a span {
	color: #FFF;
  line-height: 1.2;
  font-weight: 600;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section {
	padding: 0;
	border-radius: 0;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section.show {
	padding: 30px 4%;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner {
	padding: 3%;
	font-size: calc(9px + 1.4vw);
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner p {
	font-size: calc(10px + 2.1vw);
	letter-spacing: normal;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic01 {
	right: 3vw;
	top: -15px;
	max-width: 25vw;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic02 {
	right: 2vw;
	top: 25px;
	max-width: 12vw;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic03 {
	right: 6vw;
	top: -3vh;
	max-height: 35vw;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .inner ul.point li .pic04 {
	right: 2vw;
	bottom: 7vh;
	max-width: 12vw;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .check .comment {
	text-align: center;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .check .comment img {
	margin: auto;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .adviser.spDisp {
	padding: 0 3%;
	margin-top: 10px;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .adviser.spDisp .flex {
	max-width: 350px;
	margin: auto;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .adviser.spDisp .flex dl {
	font-family: "Noto Sans Japanese", sans-serif;
	font-size: 0.9em;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .adviser.spDisp .flex dl dt {
	font-size: 1.4em;
	margin-bottom: 0.3em;
  }
  section#howto .tabBoxArea.spTab .tab_cont .section .adviser.spDisp .flex dl dt img {
	height: 1.2em;
	position: relative;
	top: 0.3em;
  }
}

section#fee {
  margin-bottom: 90px;
  padding-top: 74px;
  /* sp */
}
section#fee h2 img {
  height: 60px;
}
section#fee h3.radius {
  background: #E65555;
  line-height: 1;
  color: #FFF;
  font-weight: bold;
  font-size: 1.3em;
  padding: 0.6em 1em;
  border-radius: 10px;
  margin-bottom: 0.4em;
}
section#fee p.head.maru {
  font-weight: bold;
  font-size: 115%;
  padding: 0 0 0 0.4em;
  margin-bottom: 0.6em;
}
section#fee p.head.maru:before {
  content: "●";
  margin-right: 0.2em;
}
section#fee .feetable {
  max-width: 650px;
  margin: 20px auto;
  color: #4d4a4a;
}
section#fee .feetable .border2clm {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
	  -ms-flex-pack: justify;
		  justify-content: space-between;
  font-family: "Noto Sans Japanese", sans-serif;
}
section#fee .feetable .border2clm .clm {
  text-align: center;
  -ms-flex-preferred-size: 50%;
	  flex-basis: 50%;
  padding: 10px 0;
}
section#fee .feetable .border2clm .clm .img p {
  line-height: 1.3;
}
section#fee .feetable .border2clm .clm .img img {
  max-height: 220px;
}
section#fee .feetable .border2clm .clm .img .thumb a {
  font-size: 0;
}
section#fee .feetable .border2clm .clm:first-child {
  border-right: 2px #e3e3e3 solid;
}
section#fee .feetable .border2clm .clm:first-child .head1 {
  border-radius: 8px 0 0 8px;
}
section#fee .feetable .border2clm .clm:last-child {
  border-left: 2px #e3e3e3 solid;
}
section#fee .feetable .border2clm .clm:last-child .head1 {
  border-radius: 0 8px 8px 0;
}
section#fee .feetable .border2clm.red {
  color: #CC0000;
}
section#fee .feetable .border2clm.title .clm {
  padding-top: 0;
  padding-bottom: 30px;
}
section#fee .feetable .border2clm.title p.small {
  color: #e65555;
  font-size: 0.95em;
  margin: 1em 0 0.5em;
}
section#fee .feetable .border2clm.price .clm span {
  font-weight: bold;
  font-size: 1.4em;
}
section#fee .feetable .border2clm.price .clm .line-through {
  position: relative;
}
section#fee .feetable .border2clm.price .clm .line-through::before {
  position: absolute;
  border-bottom: 1px solid #4d4a4a;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 4.2em;
  content: "";
}
section#fee .feetable .border2clm .head1 {
  background: #e65555;
  line-height: 1;
  color: #FFF;
  font-weight: bold;
  font-size: 1.3em;
  padding: 0.8em 0;
}
section#fee .feetable .head2 {
  padding: 10px 0;
  text-align: center;
  background: #ffefef;
  font-size: 1.2em;
  font-weight: bold;
  border-radius: 8px;
  line-height: 1;
  font-family: "Noto Sans Japanese", sans-serif;
}
section#fee .feetable .head2 small {
  font-size: 70%;
  font-weight: normal;
}
section#fee .illustCmt {
  margin: 40px 0 100px;
}
section#fee .illustCmt img {
  margin: auto;
}
section#fee .box {
  border: 5px solid #CC0000;
  border-radius: 13px;
  padding: 0 3%;
}
section#fee .box .head {
  text-align: center;
  padding: 20px 0;
}
section#fee .box .head h2 {
  color: #CC0000;
  font-weight: bold;
  font-size: 1.8em;
}
section#fee .box .head span {
  font-size: 1.3em;
  font-weight: bold;
  color: #CC0000;
}
.t-underｰline {
  text-decoration: underline;
}
@media screen and (max-width: 750px) {
  section#fee {
	padding: 74px 3% 0;
  margin-bottom: 20px;
  }
  section#fee h3.radius {
	border-radius: 7px;
	font-size: 1.2em;
  }
  section#fee .feetable {
	max-width: 100%;
  margin: 5px auto 20px;
  }
  section#fee .feetable .border2clm .clm {
	padding: 1.5vh 0 2vh;
  }
  section#fee .feetable .border2clm .head1 {
	font-size: 4.5vw;
  }
  section#fee .feetable .border2clm.title .clm {
    padding-bottom: 10px;
  }  
  section#fee .feetable .border2clm.title p.small {
	font-size: 3.1vw;
  }
  section#fee .feetable .border2clm.title .img {
	padding: 5px 3%;
  }
  section#fee .feetable .border2clm.title .img img {
	max-height: 17vh;
  }
  section#fee .feetable .head2 {
	font-size: 4vw;
  }
  section#fee .illustCmt {
    margin: 40px 0 20px;
  }
}
@media screen and (max-width: 750px) and (orientation: landscape) {
  section#fee .feetable {
	max-width: 100%;
  }
  section#fee .feetable .border2clm.title .img img {
	max-height: 40vh;
  }
}
section#flow {
  margin-bottom: 80px;
  background: #f8f0e7;
  border-top: 4px solid #a98a75;
  padding: 70px 0;
  /* sp */
}
section#flow h2 {
  margin-bottom: 35px;
}
section#flow h2 img {
  height: 60px;
}
section#flow h3.img img {
  width: 150px;
}
section#flow .flowArea {
  max-width: 730px;
  margin: auto;
  position: relative;
  min-height: 1530px;
}
section#flow .flowArea h3 {
  text-align: center;
}
section#flow .flowArea h3.img2 {
  text-align: left;
  position: absolute;
  top: 690px;
  left: 17%;
}
section#flow .flowArea h3.img2 img {
  width: 150px;
}
section#flow .flowArea .section .inner {
  position: relative;
}
section#flow .flowArea .section .inner .btn {
  z-index: 3;
}
section#flow .flowArea .section .inner .road {
  z-index: -1;
}
section#flow .flowArea .section.sec01 .inner {
  z-index: 10;
  margin-bottom: 50px;
}

section#flow .flowArea .section.sec01 .inner .road {
  position: absolute;
  top: 67px;
  left: 287px;
}
section#flow .flowArea .section.sec02 {
  position: absolute;
  top: 70px;
  right: 10.5%;
  z-index: 10;
}
section#flow .flowArea .section.sec02 .inner img.cont {
  margin-right: 0;
  margin-left: auto;
}
section#flow .flowArea .section.sec02 .inner .road {
  position: absolute;
  top: 65px;
  right: 70px;
}
section#flow .flowArea .section.sec03 {
  position: absolute;
  top: 274px;
  right: 0;
  z-index: 10;
}
section#flow .flowArea .section.sec03 .inner img.cont {
  margin-right: 0;
  margin-left: auto;
}
section#flow .flowArea .section.sec03 .inner .road {
  position: absolute;
  top: 50px;
  left: -212px;
}
section#flow .flowArea .section.sec04 {
  position: absolute;
  top: 390px;
  left: 5%;
}
section#flow .flowArea .section.sec04 .inner .btn {
  position: absolute;
  left: 24px;
  bottom: 15px;
}
section#flow .flowArea .section.sec04 .inner .road {
  position: absolute;
  top: 144px;
  right: -135px;
}
section#flow .flowArea .section.sec05 {
  position: absolute;
  top: 566px;
  right: 4%;
}
section#flow .flowArea .section.sec05 .inner img.cont {
  margin-right: 0;
  margin-left: auto;
}
section#flow .flowArea .section.sec05 .inner .road {
  position: absolute;
  top: 86px;
  right: 223px;
}
section#flow .flowArea .section.sec06 {
  position: absolute;
  top: 780px;
  margin: auto;
  left: 0;
  right: 0;
}
section#flow .flowArea .section.sec06 .inner img.cont {
  margin: auto;
  left: 0;
  right: 0;
  z-index: 4;
}
section#flow .flowArea .section.sec06 .inner .road {
  position: absolute;
  top: 60px;
  left: 147px;
}
section#flow .flowArea .section.sec06 .inner .road2 {
  position: absolute;
  top: 62px;
  right: 108px;
  z-index: -1;
}
section#flow .flowArea .section.sec07 {
  position: absolute;
  top: 910px;
  left: 4%;
  z-index: 5;
}
section#flow .flowArea .section.sec07 .inner .btn {
  position: absolute;
  left: 24px;
  bottom: 24px;
}
section#flow .flowArea .section.sec08 {
  position: absolute;
  bottom: -20px;
  width: 100%;
  z-index: 1;
}
section#flow .flowArea .section.sec08 .inner img {
  margin: auto;
}
section#flow .flowArea .section.sec08 .inner .num {
  text-align: center;
  position: relative;
  top: 90px;
}
section#flow .flowArea .section.sec08 .inner .num img {
  height: 58px;
}
section#flow .flowArea .section.sec08 .inner .flex {
  -webkit-box-align: end;
	  -ms-flex-align: end;
		  align-items: flex-end;
  -webkit-box-pack: justify;
	  -ms-flex-pack: justify;
		  justify-content: space-between;
  padding: 0 5%;
}
section#flow .notes-s {
  margin: 15px auto 0;
  max-width: 730px;
  padding: 0 4%;
}
section#flow .notes-s li {
  font-size: 13px;
}
section#flowVideo {
  margin-top: 70px;
}
section#flowVideo .video {
  margin-bottom: 40px;
  text-align: center;
}
section#flowVideo .video .head {
  color: #CC0000;
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: bold;
  font-size: 1.2em;
  margin: 0.5em 0;
}
section#flowVideo .video video {
  width: 70%;
  border: 4px solid #CC0000;
  border-radius: 5px;
}
@media screen and (max-width: 750px) {
  section#flow {
	padding: 6vh 0 3vh 0;
	margin-bottom: 0;
  }
  section#flow h3.img img {
	width: 38vw;
  }
  section#flow .flowArea {
	max-width: 730px;
	margin: auto;
	position: relative;
	min-height: unset;
  }
  section#flow .flowArea h3.img2 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
	margin-left: auto;
	margin-right: 4%;
	margin-top: 25px;
	top: 0;
	text-align: right;
  }
  section#flow .flowArea h3.img2 img {
	width: 38vw;
  }
  section#flow .flowArea .section {
	z-index: 1;
  }
  section#flow .flowArea .section.sec01 {
	position: relative;
  }
  section#flow .flowArea .section.sec01 .inner {
	width: 90%;
	margin: auto;
  }
  section#flow .flowArea .section.sec01 .inner .btn {
	width: 86%;
	margin: auto;
	top: 66%;
	left: 9%;
  }
  section#flow .flowArea .section.sec01 .inner .btn img {
	max-height: 10vh;
  }
  section#flow .flowArea .section.sec01 .inner .road {
	width: 24vw;
	top: 9.5vh;
	right: 28vw;
	left: auto;
  }
  section#flow .flowArea .section.sec02 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec02 .inner {
	width: 72%;
	margin: 30px 4% 0 auto;
	top: 0;
	right: 0;
  }
  section#flow .flowArea .section.sec02 .inner .road {
	width: 32vw;
  }
  section#flow .flowArea .section.sec03 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec03 .inner {
	width: 84%;
	margin: 5vh auto 0 4%;
	top: 0;
	right: auto;
  }
  section#flow .flowArea .section.sec03 .inner .road {
	width: 26vw;
	top: 19vh;
	left: 34vw;
  }
  section#flow .flowArea .section.sec04 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec04 .inner {
	width: 80%;
	margin: 4vh 4% 0 auto;
	top: 0;
	left: 0;
	max-width: auto;
  }
  section#flow .flowArea .section.sec04 .inner .road {
	width: 30vw;
	top: 18vh;
	right: 24vw;
	left: auto;
  }
  section#flow .flowArea .section.sec04 .inner .btn {
	width: 75%;
	right: 5.5vw;
	bottom: 4vw;
	left: auto;
  }
  section#flow .flowArea .section.sec05 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec05 .inner {
	width: 90%;
	margin: 5.5vh auto 0 4%;
	top: 0;
	right: auto;
  }
  section#flow .flowArea .section.sec05 .inner .road {
	width: 25.5vw;
	top: 20vh;
	right: 37vw;
  }
  section#flow .flowArea .section.sec06 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec06 .inner {
	width: 70%;
	margin: auto;
	top: 0;
	right: auto;
  }
  section#flow .flowArea .section.sec06 .inner .road {
	width: 27vw;
	top: 13vh;
	left: 7vw;
  }
  section#flow .flowArea .section.sec06 .inner .road2 {
	position: absolute;
	width: 41vw;
	top: 15vh;
	right: -10vw;
	z-index: -1;
  }
  section#flow .flowArea .section.sec07 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec07 .inner {
	width: 50%;
	margin: 6vh auto 0 4%;
	top: 0;
	left: 0;
	max-width: auto;
  }
  section#flow .flowArea .section.sec07 .inner .btn {
	width: 86%;
	left: 4vw;
	bottom: auto;
	top: 74%;
  }
  section#flow .flowArea .section.sec08 {
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	bottom: auto;
  }
  section#flow .flowArea .section.sec08 .inner {
	margin-top: -73px;
  }
  section#flow .flowArea .section.sec08 .inner img {
	margin: auto;
  }
  section#flow .flowArea .section.sec08 .inner .num {
	text-align: center;
	position: relative;
	top: 90px;
  }
  section#flow .flowArea .section.sec08 .inner .num img {
	height: 58px;
  }
  section#flow .flowArea .section.sec08 .inner .flex {
	-webkit-box-align: end;
		-ms-flex-align: end;
			align-items: flex-end;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	padding: 0;
  }
  section#flow .flowArea .section.sec08 .inner .flex .clm {
	-ms-flex-preferred-size: 49%;
		flex-basis: 49%;
  }
  section#flow .notes-s {
	padding: 0 4%;
	max-width: auto;
  }
  section#flowVideo .video {
    max-width: 80%;
    margin: 5vh auto 0;
  }
  section#flowVideo .video video {
    width: 100%;
  }
  section#flowVideo .video .clm:first-child {
    margin-bottom: 4vh;
  }
  section#flowVideo {
    margin-top: 0;
  }
}
@media screen and (max-width: 750px) and (orientation: landscape) {
  section#flow .flowArea .section.sec01 .inner {
	width: 60%;
  }
  section#flow .flowArea .section.sec01 .inner .road {
	width: 13vw;
	top: 30vh;
	right: 6vw;
  }
  section#flow .flowArea .section.sec02 .inner {
	width: 45%;
	margin: 30px 8vw 0 auto;
	top: 0;
	right: 0;
  }
  section#flow .flowArea .section.sec02 .inner .road {
	width: 19vw;
	right: 25vw;
  }
  section#flow .flowArea .section.sec03 .inner {
	width: 55%;
	margin: 5vh auto 0 10vw;
	top: 0;
  }
  section#flow .flowArea .section.sec03 .inner .road {
	width: 16vw;
	top: 30vh;
	left: 34vw;
  }
  section#flow .flowArea .section.sec04 .inner {
	width: 55%;
	margin: 4vh 8vw 0 auto;
	top: 0;
	left: 0;
	max-width: auto;
  }
  section#flow .flowArea .section.sec04 .inner .road {
	width: 19vw;
	top: 30vh;
	right: 28vw;
	left: auto;
  }
  section#flow .flowArea .section.sec04 .inner .btn {
	right: 3.8vw;
	bottom: 3vw;
	left: auto;
  }
  section#flow .flowArea .section.sec05 .inner {
	width: 60%;
	margin: 5.5vh auto 0 11vw;
	top: 0;
	right: auto;
  }
  section#flow .flowArea .section.sec05 .inner .road {
	width: 16vw;
	top: 63vh;
	right: 14vw;
  }
  section#flow .flowArea .section.sec06 .inner {
	width: 55%;
	margin: auto;
	top: 0;
	right: auto;
  }
  section#flow .flowArea .section.sec06 .inner .road {
	width: 19vw;
	top: 16vh;
	left: 7vw;
  }
  section#flow .flowArea .section.sec07 .inner {
	width: 35%;
	margin: 8vh auto 0 12vw;
	top: 0;
	left: 0;
	max-width: auto;
  }
  section#flow .flowArea .section.sec07 .inner .road {
	width: 30vw;
	top: -11vh;
	right: -40vw;
  }
  section#flow .flowArea .section.sec07 .inner .btn {
	left: 2.5vw;
  }
  section#flow .flowArea .section.sec08 .inner {
	width: 80%;
	margin: auto;
  }
}


.sp-omitArea .sp-omitTrigger, .sp-omitArea .sp-omitTrigger-close {
  display: none;
}
@media screen and (max-width: 750px) {
  .sp-omitArea .sp-omitTrigger {
	display: block;
	background: #f8f0e7;
	text-align: center;
	position: relative;
	z-index: 1;
	padding: 4.5em 0;
	top: 30px;
  }
  .sp-omitArea .sp-omitTrigger span, .sp-omitArea .sp-omitTrigger-close span {
	font-family: "Noto Sans Japanese", sans-serif;
	font-weight: 700;
	font-size: 20px;
	color: #a98a75;
	border-bottom: 3px solid #a98a75;
  }
  .sp-omitArea .sp-omitTrigger span:hover, .sp-omitArea .sp-omitTrigger-close span:hover {
	border-bottom: 3px solid #FFF;
	text-decoration: none;
	-webkit-transition: 0.3;
	transition: 0.3;
  }
  .sp-omitArea .sp-omitCont {
	display: none;
  }
  .sp-omitArea .sp-omitTrigger-close {
    display: none;
    background: #f8f0e7;
    text-align: center;
    position: relative;
    z-index: 1;
    padding: 1em 0 4.5em;
    top: 30px;
    }
    
}
@media screen and (max-width: 750px) {
  .flowArea.close .sp-omitArea .sp-omitTrigger {
	display: block;
  }
  .flowArea.close .sp-omitArea .sp-omitTrigger-close {
    display: none;
  }
  
}

@media screen and (max-width: 750px) {
  .flowArea.open .sp-omitArea .sp-omitTrigger {
	display: none;
  }
  .flowArea.open .sp-omitArea .sp-omitTrigger-close {
    display: block;
  }
  
}
/* sp */
section#comment {
  margin-bottom: 7vh;
}
section#comment .box {
  border: 5px solid #99d9dc;
  border-radius: 13px;
}
section#comment .box .head {
  border-bottom: 3px solid #99d9dc;
  text-align: center;
  position: relative;
  padding: 28px 0 23px;
}
section#comment .box .head h2 {
  color: #7cd7db;
  font-weight: bold;
  font-size: 1.8em;
  letter-spacing: 0.1em;
}
section#comment .box .head span {
  font-size: 1.3em;
}
section#comment .box .head span small {
  font-size: 70%;
  margin-left: 1em;
}
section#comment .box .head .photo {
  position: absolute;
  top: -30px;
  right: 13%;
}
section#comment .box .head .photo img {
  max-height: 146px;
}
section#comment .box .cont {
  padding: 25px 30px;
}
section#comment .box .cont h3.border {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: bold;
  font-size: 1em;
  margin-bottom: 0.7em;
}
section#comment .box .cont h3.border:before {
  font-family: "icomoon";
  content: "\e902";
  margin-right: 0.2em;
  font-size: 170%;
  position: relative;
  top: 0.25em;
}
section#comment .box .cont h3.border:after {
  font-family: "icomoon";
  content: "\e902";
  margin-left: 0.2em;
  font-size: 170%;
  position: relative;
  top: 0.25em;
}
section#comment .box .cont h3.border.red {
  color: #CC0000;
}
section#comment .box .cont h3.border.blue {
  color: #284396;
}
@media all and (min-width: 751px) and (max-width: 1290px) {
  section#comment .box .head .photo {
	right: 5%;
  }
  section#comment .box .head .photo img {
	max-height: 140px;
  }
}
@media screen and (max-width: 750px) {
  section#comment {
	padding: 3vh 3% 0 3%;
  margin-bottom: 30px;
  }
  section#comment .box .head .photo {
	position: relative;
	top: 0;
	right: 0;
	text-align: center;
	margin: 1.5vh 0;
  }
  section#comment .box .head h2 {
	font-size: 1.6em;
  }
  section#comment .box .head span {
	font-size: 1.5em;
  }
  section#comment .box .head span small {
	display: block;
	font-size: 65%;
	margin-left: 0;
  }
  section#comment .box .cont {
	padding: 5vw;
  }
  section#comment .box .cont .clm:last-child {
	margin-top: 3vh;
  }
}

section#interview {
  background: url(../img/bg_head_int.png);
  margin-top: 60px;
  padding: 90px 0 60px;
  /* sp */
}
section#interview h2.img {
  margin-bottom: 47px;
}
section#interview h2.img img {
  height: 190px;
}
section#interview .moreLink a {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 700;
  font-size: 20px;
  color: #6d808a;
  border-bottom: 3px solid #6d808a;
}
section#interview .moreLink a:hover {
  border-bottom: 3px solid #FFF;
  text-decoration: none;
  -webkit-transition: 0.3;
  transition: 0.3;
}
section#interview .postList {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 34px 1fr 34px 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px 34px;
  margin-bottom: 85px;
}
section#interview .postList a.post {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 600;
  border-radius: 12px;
  background: #FFF;
  position: relative;
  opacity: 0;
}
section#interview .postList a.post dl dt {
  border-radius: 12px 12px 0 0;
  background: #c4ced1;
  padding: 1.5em 0 calc(62px + 0.5em);
  color: #000;
  font-size: 22px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
	  -ms-flex-pack: center;
		  justify-content: center;
}
section#interview .postList a.post dl dd.photo {
  text-align: center;
  position: relative;
  margin-top: -62px;
  margin-bottom: 10px;
}
section#interview .postList a.post dl dd.photo img {
  width: 124px;
  height: 124px;
}
section#interview .postList a.post dl dd.photo img:hover {
  opacity: 1;
}
section#interview .postList a.post dl dd.vol {
  text-align: center;
  color: #6d808a;
  padding-bottom: 50px;
  background: url(../img/line_red.png) no-repeat center 40px;
  background-size: 30% auto;
}
section#interview .postList a.post dl dd.vol span {
  font-size: 16px;
  background: #6d808a;
  border-radius: 1.5em;
  padding: 0 1em 0;
  color: #FFF;
  margin-right: 4px;
}
section#interview .postList a.post dl dd.vol div {
  display: inline-block;
  font-size: 19px;
}
section#interview .postList a.post:hover {
  text-decoration: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
section#interview .postList a.post:hover dl dt {
  color: #CC0000;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
section#interview .postList a.post::before {
  content: "";
  width: 90%;
  height: 10px;
  position: absolute;
  top: 100%;
  left: 5%;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
  z-index: -1;
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
section#interview .postList a.post:hover {
  -webkit-transform: translateY(-7px);
		  transform: translateY(-7px);
}
section#interview .postList a.post:hover::before {
  -webkit-transform: translateY(7px);
		  transform: translateY(7px);
  opacity: 1;
}
section#interview .postList a.post:nth-child(even) dl dd.vol {
  background: url(../img/line_blue.png) no-repeat center 40px;
  background-size: 30% auto;
}
section#interview .postList a.post:nth-child(even):hover dl dt {
  color: #284396;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
section#interview .postList .blank {
  background: rgba(255, 255, 255, 0.5);
  border-radius: 12px;
  opacity: 0;
}
@media screen and (max-width: 750px) {
  section#interview {
	padding: 60px 0 30px;
  margin-top: 0;
  }
  section#interview h2.img {
	padding: 0 10%;
  }
  section#interview h2.img img {
	height: auto;
  }
  section#interview .postList {
	-ms-grid-columns: 1fr;
	grid-template-columns: 1fr;
	padding: 0 3%;
	gap: 15px 0;
	margin-bottom: 10px;
  }
  section#interview .postList a.post {
	border-radius: 10px;
  }
  section#interview .postList a.post dl {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	position: relative;
  }
  section#interview .postList a.post dl dt {
	border-radius: 10px 0 0 10px;
	font-size: 3.8vw;
	padding: 0;
	padding: 1.3em 1em;
	-ms-flex-preferred-size: 57%;
		flex-basis: 57%;
	max-width: 57%;
	-webkit-box-pack: start;
		-ms-flex-pack: start;
			justify-content: flex-start;
  }
  section#interview .postList a.post dl dd.photo {
	margin-top: 0;
	margin-bottom: 0;
	position: absolute;
	left: 44vw;
  }
  section#interview .postList a.post dl dd.photo img {
	width: 17vw;
	height: auto;
  }
  section#interview .postList a.post dl dd.vol {
	text-align: left;
	padding-bottom: 20px;
	margin-bottom: -10px;
	-ms-flex-preferred-size: 40%;
		flex-basis: 40%;
	max-width: 40%;
	padding-left: 8.5vw;
	background-position: 8.5vw 12vw;
	background-size: 40% auto;
  }
  section#interview .postList a.post dl dd.vol span {
	display: inline-block;
	margin-right: 0;
	font-size: 3vw;
  }
  section#interview .postList a.post dl dd.vol div {
	display: block;
	font-size: 3.8vw;
  }
  section#interview .postList a.post:nth-child(even) dl dd.vol {
	text-align: left;
	padding-bottom: 20px;
	-ms-flex-preferred-size: 40%;
		flex-basis: 40%;
	max-width: 40%;
	padding-left: 8.5vw;
	background-position: 8.5vw 12vw;
	background-size: 40% auto;
  }
}

section#faq {
  border-top: 14px solid #ced9f0;
  padding: 50px 0 80px;
  /* sp */
}
section#faq h2 img {
  height: 60px;
}
section#faq .faqList {
  max-width: 650px;
  margin: 40px auto 0;
}
section#faq .faqList hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ced9f0;
  margin: 1em 0;
}
section#faq .faqList dl {
  margin-bottom: 15px;
  border-radius: 10px;
  border: 10px solid #ced9f0;
  font-family: "Noto Sans Japanese", sans-serif;
}
section#faq .faqList dl dt {
  color: #4d4c4b;
  font-size: 1.3em;
  font-weight: bold;
  background: #ced9f0;
  padding: 14px 1.3em 18px;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
	  -ms-flex-align: center;
		  align-items: center;
  min-height: 4.4em;
  line-height: 1.7;
  position: relative;
}
section#faq .faqList dl dt:before, section#faq .faqList dl dt:after {
  -webkit-transition: -webkit-transform 0.5s linear;
  transition: -webkit-transform 0.5s linear;
  transition: transform 0.5s linear;
  transition: transform 0.5s linear, -webkit-transform 0.5s linear;
  content: "";
  position: absolute;
  right: 20px;
  top: auto;
  bottom: auto;
  margin: 0;
  height: 4px;
  width: 20px;
  background-color: #FFF;
  line-height: 20px;
}
section#faq .faqList dl dt:after {
  -webkit-transform: rotate(90deg);
		  transform: rotate(90deg);
  margin-top: 0;
  height: 4px;
}
section#faq .faqList dl dt.open:before {
  -webkit-transition: -webkit-transform 0.5s linear;
  transition: -webkit-transform 0.5s linear;
  transition: transform 0.5s linear;
  transition: transform 0.5s linear, -webkit-transform 0.5s linear;
  -webkit-transform: translateY(-50%) rotate(45deg);
		  transform: translateY(-50%) rotate(45deg);
}
section#faq .faqList dl dt.open:after {
  -webkit-transition: -webkit-transform 0.5s linear;
  transition: -webkit-transform 0.5s linear;
  transition: transform 0.5s linear;
  transition: transform 0.5s linear, -webkit-transform 0.5s linear;
  -webkit-transform: translateY(-50%) rotate(-45deg);
		  transform: translateY(-50%) rotate(-45deg);
}
section#faq .faqList dl dd {
  color: #284396;
  padding: 1.5em 1.3em 1.8em;
}
section#faq .faqList dl dd p {
  line-height: 1.6;
}
section#faq .faqList dl dd p.lead {
  font-size: 1.1em;
}
section#faq .faqList dl dd p.mark {
  font-weight: bold;
}
section#faq .faqList dl dd p.mark:before {
  content: "◆";
}
section#faq .faqList dl dd em {
  font-weight: bold;
  color: #284396;
}
section#faq .faqList dl dd ul.basic-m {
  color: #4d4c4b;
}
section#faq .faqList dl dd .imgBlock {
  max-width: 450px;
  margin: auto;
}
section#faq .faqList dl dd .imgBlock p {
  font-weight: bold;
  color: #4d4c4b;
}
section#faq .faqList a {
  text-decoration: none;
}
section#faq .faqList a:hover {
  text-decoration: underline;
}
section#faq .sub-ttl-desc {
  margin-bottom: 10px;
  font-size: 18px;
  color: #333;
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  section#faq {
	padding: 30px 0 60px;
  }
  section#faq .faqList {
	padding: 0 3%;
  margin-top: 20px;
  }
  section#faq .faqList dl dt {
	padding: 0.8em 1.8em 1em 0.8em;
	font-size: 1em;
  }
  section#faq .faqList dl dt:before, section#faq .faqList dl dt:after {
	right: 2.5vw;
	height: 4px;
	width: 16px;
	line-height: 16px;
  }
  section#faq .faqList dl dd p.lead {
	font-size: 1em;
  }
  section#faq .faqList dl dd p {
	font-size: 0.9em;
  }
}

dl.toggle dt {
  cursor: pointer;
}
dl.toggle dd {
  display: none;
}

/* interview */
.contWrap.page-interview {
  /* sp */
}
.contWrap.page-interview .contentsArea {
  max-width: 1000px;
  margin-right: 0;
  margin-left: auto;
}
.contWrap.page-interview section#interview_detail {
  margin-top: 0;
  background: #FFF;
  padding: 0;
}
.contWrap.page-interview section#interview_detail .head {
  background: url(../img/bg_head_int.png);
  padding: 90px 0 47px;
  border-bottom: 5px solid #67818b;
}
.contWrap.page-interview section#interview_detail .head h2.img {
  margin-bottom: 0;
}
.contWrap.page-interview section#interview_detail .head h2.img img {
  height: 170px;
}
.contWrap.page-interview section#interview_detail section.post {
  border-bottom: 5px solid #67818b;
  padding: 90px 0;
}
.contWrap.page-interview section#interview_detail section.post dl.author {
  text-align: center;
  font-family: "Noto Sans Japanese", sans-serif;
  margin-bottom: 30px;
}
.contWrap.page-interview section#interview_detail section.post dl.author dt.photo {
  margin-bottom: 15px;
}
.contWrap.page-interview section#interview_detail section.post dl.author dt.photo img {
  height: 166px;
}
.contWrap.page-interview section#interview_detail section.post dl.author dd.vol {
  text-align: center;
  color: #6d808a;
  padding-bottom: 1em;
  font-weight: bold;
}
.contWrap.page-interview section#interview_detail section.post dl.author dd.vol span {
  font-size: 22px;
  background: #6d808a;
  border-radius: 1.5em;
  padding: 0 1em 0;
  color: #FFF;
  margin-right: 4px;
}
.contWrap.page-interview section#interview_detail section.post dl.author dd.vol div {
  display: inline-block;
  font-size: 25px;
}
.contWrap.page-interview section#interview_detail section.post dl.author dd.vol:after {
  content: url(../img/line_red.png);
  margin-top: 8px;
  display: block;
  vertical-align: middle;
  -webkit-transform: scale(0.5);
		  transform: scale(0.5);
}
.contWrap.page-interview section#interview_detail section.post .inner {
  max-width: 940px;
  margin: auto;
  color: #6d808a;
}
.contWrap.page-interview section#interview_detail section.post .inner h3 {
  background: #d0dadc;
  color: #000;
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: bold;
  font-size: 28px;
  padding: 1em 1.3em;
  margin-bottom: 1em;
  line-height: 1.7;
}
.contWrap.page-interview section#interview_detail section.post .inner h4 {
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: bold;
  color: #6d808a;
  font-size: 23px;
  margin-bottom: 1em;
}
.contWrap.page-interview section#interview_detail section.post .inner p {
  line-height: 1.9;
  font-size: 16px;
}
.contWrap.page-interview section#interview_detail section.post .inner em {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fbf769));
  background: linear-gradient(transparent 0%, #fbf769 0%);
  color: #6d808a;
}
.contWrap.page-interview section#interview_detail section.post .inner .imgBlock {
  max-width: 540px;
  margin: auto;
}
.contWrap.page-interview section#interview_detail section.post .inner .imgBlock p {
  font-weight: bold;
  font-family: "Noto Sans Japanese", sans-serif;
  font-size: 90%;
}
.contWrap.page-interview section#interview_detail section.post:nth-child(odd) dl.author dd.vol:after {
  content: url(../img/line_blue.png);
}
.contWrap.page-interview section#interview_detail section.post:last-child {
  border-bottom: none;
}
@media screen and (max-width: 750px) {
  .contWrap.page-interview .innerwidth {
	padding: 0;
  }
  .contWrap.page-interview section#interview_detail .head {
	padding: 80px 0 47px;
  }
  .contWrap.page-interview section#interview_detail section.post {
	padding: 42px 0;
  }
  .contWrap.page-interview section#interview_detail section.post dl.author {
	margin-bottom: 20px;
  }
  .contWrap.page-interview section#interview_detail section.post dl.author dt.photo img {
	height: 130px;
  }
  .contWrap.page-interview section#interview_detail section.post .inner {
	padding: 0 5%;
  }
  .contWrap.page-interview section#interview_detail section.post .inner h3 {
	font-size: 1.5em;
	padding: 1em 0.8em;
  }
  .contWrap.page-interview section#interview_detail section.post .inner h4 {
	font-size: 1.2em;
  }
  .contWrap.page-interview section#interview_detail section.post .inner p {
	font-size: 1rem;
	line-height: 1.8;
  }
}

/* checkList */
.contWrap.page-checklist {
  padding-top: 30px;
  /* sp */
}
.contWrap.page-checklist .note {
  background: #e5e5e5;
  padding: 30px;
  text-align: center;
}
.contWrap.page-checklist .note .linkList {
  margin: 10px auto 0;
}
.contWrap.page-checklist .note .linkList li {
  display: inline-block;
}
.contWrap.page-checklist .note .linkList li a {
  display: block;
  background: #FFF;
  padding: 1em 2.4em 1em 1.5em;
  line-height: 1;
  border: 1px solid #CCC;
  border-radius: 8px;
  position: relative;
}
.contWrap.page-checklist .note .linkList li a:after {
  font-family: "icomoon";
  content: "\e901";
  color: #a2a2a2;
  font-size: 120%;
  position: absolute;
  right: 0.5em;
  top: 0.8em;
}
@media screen and (max-width: 750px) {
  .contWrap.page-checklist .note {
	padding: 5%;
  }
  .contWrap.page-checklist .note p {
	text-align: left;
  }
  .contWrap.page-checklist .note .linkList li {
	display: block;
	text-align: left;
	margin: 1.5vh 0;
  }
  .contWrap.page-checklist .note .linkList li a {
	padding: 1em 2em 1em 1.5em;
  }
}
.contWrap.page-checklist .contentsArea {
  max-width: 960px;
  margin-right: 0;
  margin-left: auto;
}
.contWrap.page-checklist .superviser {
  max-width: 360px;
  /* sp */
}
.contWrap.page-checklist .superviser .flex dl {
  font-family: "Noto Sans Japanese", sans-serif;
  font-size: 0.9em;
}
.contWrap.page-checklist .superviser .flex dl dt {
  font-size: 1.6em;
  margin-bottom: 0.3em;
}
.contWrap.page-checklist .superviser .flex dl dt img {
  height: 1.1em;
  position: relative;
  top: 0.3em;
}
.contWrap.page-checklist .superviser .flex .img img {
  max-height: 100px;
}
@media screen and (max-width: 750px) {
  .contWrap.page-checklist .superviser {
	max-width: auto;
  }
}

.checkListOuter {
  width: 80%;
  margin: auto;
  /* tablet */
  /* tablet */
  /* sp */
}
.checkListOuter h2 {
  color: #FFF;
  margin-bottom: 10px;
  padding: 0.5em 1.6em 0.9em;
  position: relative;
  text-align: center;
  z-index: 1;
}
.checkListOuter h2::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: #01579B;
  -webkit-transform: scaleY(1.3) perspective(1em) rotateX(2deg);
		  transform: scaleY(1.3) perspective(1em) rotateX(2deg);
  -webkit-transform-origin: bottom;
		  transform-origin: bottom;
  border-radius: 5px 5px 0 0;
}
.checkListOuter .checkList .clm {
  -ms-flex-preferred-size: 48%;
	  flex-basis: 48%;
  max-width: 48%;
}
.checkListOuter .checkList .listbox {
  position: relative;
}
.checkListOuter .checkList .listbox .il01 {
  position: absolute;
  top: -50px;
  right: -5px;
}
.checkListOuter .checkList .listbox .il02 {
  position: absolute;
  right: 8px;
  bottom: 0;
}
.checkListOuter .checkList .listbox .il03 {
  position: absolute;
  height: 126px;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 30px;
}
.checkListOuter .checkList .listbox .il04 {
  position: absolute;
  top: 5px;
  right: 35px;
}
.checkListOuter .checkList .listbox .il05 {
  position: absolute;
  top: 10px;
  right: 20px;
}
.checkListOuter .checkList .listbox .il06 {
  position: absolute;
  top: 15px;
  right: 35px;
}
.checkListOuter .checkList .listbox .il07 {
  position: absolute;
  top: 15px;
  right: -25px;
}
.checkListOuter .checkList .listbox .il08 {
  position: absolute;
  bottom: 40px;
  right: 10px;
}
.checkListOuter .checkList .listbox .il09 {
  position: absolute;
  top: 0;
  right: 8px;
}
.checkListOuter .checkList .listbox .il10 {
  position: absolute;
  bottom: -50px;
  right: 35px;
}
.checkListOuter .checkList .listbox .il11 {
  position: absolute;
  bottom: 6px;
  right: 10px;
}
.checkListOuter .checkList a.modal img {
  width: 20px;
  height: auto;
  position: relative;
  top: 1px;
}
.checkListOuter .checkList h3 {
  color: #FFF;
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: 700;
  border-radius: 5px;
  padding: 0.2em 0.6em;
}
.checkListOuter .checkList h4 {
  font-family: "Noto Sans Japanese", sans-serif;
  border-radius: 5px;
  padding: 0.2em 0.5em;
}
.checkListOuter .checkList ul {
  margin: 0.7em 0 0.9em;
}
.checkListOuter .checkList ul li {
  text-indent: -1.2em;
  padding-left: 1.2em;
  margin-bottom: 0.3em;
}
.checkListOuter .checkList ul li:before {
  font-family: yubin;
  content: "\e92b";
  margin-right: 0.2em;
}
.checkListOuter .checkList .more {
  position: relative;
}
.checkListOuter .checkList .more .cmt {
  position: absolute;
  right: -30px;
  top: 15px;
}
.checkListOuter .checkList .more .cmt img {
  width: 200px;
}
.checkListOuter .checkList .more ul {
  border-top: 1px solid #4d4c4b;
  padding-top: 0.2em;
}
.checkListOuter .checkList .more ul li {
  border-bottom: 1px solid #4d4c4b;
  padding-bottom: 0.2em;
}
@media all and (min-width: 751px) and (max-width: 1290px) {
  .checkListOuter {
	width: 90%;
  }
}
@media screen and (max-width: 750px) {
  .checkListOuter {
	width: 94%;
  }
  .checkListOuter .checkList .listbox .il01 {
	max-width: 40vw;
	top: -5vh;
  }
  .checkListOuter .checkList .listbox .il02 {
	max-width: 40vw;
  }
  .checkListOuter .checkList .listbox .il03 {
	max-width: 28vw;
	right: 3vw;
  }
  .checkListOuter .checkList .listbox .il04 {
	max-width: 23vw;
	top: 0;
	right: 3vw;
  }
  .checkListOuter .checkList .listbox .il05 {
	max-width: 18vw;
	right: 0;
  }
  .checkListOuter .checkList .listbox .il06 {
	max-width: 28vw;
	right: 3vw;
  }
  .checkListOuter .checkList .listbox .il07 {
	max-width: 18vw;
	right: 0;
  }
  .checkListOuter .checkList .listbox .il08 {
	max-width: 23vw;
	right: 0;
  }
  .checkListOuter .checkList .listbox .il09 {
	max-width: 35vw;
	right: 0;
  }
  .checkListOuter .checkList .listbox .il10 {
	max-width: 34vw;
	bottom: 3vh;
	right: 0;
  }
  .checkListOuter .checkList .listbox .il11 {
	max-width: 40vw;
	right: 0;
  }
  .checkListOuter .checkList .more .cmt {
	right: 0;
	top: 7px;
  }
}

#check_myself,
#check_important {
  /* sp */
}
#check_myself .superviser,
#check_important .superviser {
  margin: 30px auto;
}
#check_myself h1,
#check_important h1 {
  text-align: center;
  margin: 0 auto 30px;
}
#check_myself .dlBtn,
#check_important .dlBtn {
  text-align: center;
  margin: 40px auto;
}
@media screen and (max-width: 750px) {
  #check_myself .superviser,
#check_important .superviser {
	margin: 4vh auto;
	width: 94%;
  }
  #check_myself h1,
#check_important h1 {
	padding: 0 7%;
	margin: 30px auto 25px;
  }
}

#check_myself h2::before {
  background: #CC0000;
}
#check_myself h3 {
  background: #CC0000;
}
#check_myself h4 {
  background: #f9dada;
  color: #CC0000;
}

#check_important h2::before {
  background: #284396;
}
#check_important h3 {
  background: #284396;
}

.modaal-wrapper .modaal-container {
  border: 1px solid #CC0000;
  border-radius: 15px;
}

.modaal-content-container .head {
  font-size: 1.1em;
  font-family: "Noto Sans Japanese", sans-serif;
  font-weight: bold;
  margin-bottom: 0.6em;
  color: #4d4c4b;
}
.modaal-content-container .head.checkbox:before {
  font-family: yubin;
  content: "\e92b";
  margin-right: 0.2em;
}
.modaal-content-container p {
  color: #990000;
}

/*----------------------------------------------------------
	Script
--------------------------------------------------------- */
body.modaal-noscroll {
  overflow: visible !important;
  position: static !important;
}

.modaal-wrapper .modaal-close {
  display: none;
}
.modaal-wrapper .modaal-container {
  max-width: 50vw;
}
.modaal-wrapper .modaal-container .modaal-content-container {
  border-radius: 5px;
  font-size: 1em;
  font-family: "Noto Sans Japanese", sans-serif;
  position: relative;
}
.modaal-wrapper .modaal-container .modaal-content-container p {
  line-height: 1.5;
}
.modaal-wrapper .modaal-container .modaal-content-container .modal_close {
  cursor: pointer;
}
.modaal-wrapper .modaal-container .modaal-content-container .modal_close:after {
  font-family: yubin;
  content: "\e912";
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: absolute;
  right: 8px;
  top: 8px;
  font-size: 30px;
  color: #222;
  height: 30px;
  width: 30px;
  line-height: 1;
  margin-top: 0;
}
.modaal-wrapper .modaal-container .modaal-content-container .modal_close:hover:after {
  color: #CC0000;
}

@media screen and (max-width: 750px) {
  .modaal-wrapper .modaal-container {
	max-width: 84vw;
  }
  .modaal-wrapper .modaal-container .modaal-content-container {
	padding: 7vw;
  }
}
/* sp */
.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 70px);
		  transform: translate(0, 70px);
  -webkit-transition: all 1s;
  transition: all 1s;
}

/* 画面内に入った状態 */
.fadein.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
		  transform: translate(0, 0);
}

/* 画面外にいる状態 */
.zoomin {
  opacity: 0;
  -webkit-transform: scale(0.8);
		  transform: scale(0.8);
  -webkit-transition: all 1s;
  transition: all 1s;
}

/* 画面内に入った状態 */
.zoomin.scrollin {
  opacity: 1;
  -webkit-transform: scale(1);
		  transform: scale(1);
}

/* スライドイン */
.slidein {
  opacity: 0;
}

.slidein.scrollin {
  -webkit-animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
		  animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
  opacity: 1;
}

@-webkit-keyframes slideIn {
  0% {
	-webkit-transform: translateX(180px);
			transform: translateX(180px);
	opacity: 0;
  }
  100% {
	-webkit-transform: translateX(0);
			transform: translateX(0);
  }
  40%, 100% {
	opacity: 1;
  }
}

@keyframes slideIn {
  0% {
	-webkit-transform: translateX(180px);
			transform: translateX(180px);
	opacity: 0;
  }
  100% {
	-webkit-transform: translateX(0);
			transform: translateX(0);
  }
  40%, 100% {
	opacity: 1;
  }
}