@charset "utf-8";
@media screen and (max-width: 750px) {
 /*=============================
		ttl_fukidashi
===============================*/
 .ttl_fukidashi {
  font-family: 'Zen Maru Gothic', sans-serif;
  color: #fff;
  background: #0e5e99;
 }
 .ttl_fukidashi::before {
  bottom: -4.5vw;
  left: 50%;
  margin-left: -8vw;
  border-style: solid;
  border-width: 5vw 8vw 0 8vw;
  border-color: #0e5e99 transparent transparent transparent;
 }
 /*=============================
		headline
===============================*/
 .hl_underline {
  font-size: 5.8vw;
  padding-bottom: 4vw;
  text-align: center;
 }
 .hl_underline::before, .hl_underline::after {
  height: 0.6vw;
 }
 .hl_underline::after {
  width: 24vw;
 }
 /*=============================
		white_box
===============================*/
 .white_box {
  border-radius: 2vw;
  padding: 5.3vw;
 }
 /*=============================
		mainvisual
===============================*/
 #mainvisual {
  width: 100%;
  min-height: 1px;
  height: auto;
  background: none;
 }
 /*=============================
		contact_1
===============================*/
 .contact_common {
  padding: 6vw 0 8vw;
 }
 .contact_common h2 {
  font-size: 4.6vw;
 }
 .contact_common h2 .slash {
  padding: 0 8vw;
  line-height: 1.4;
  background: url(../images/contact_slash_left.svg) no-repeat left bottom, url(../images/contact_slash_right.svg) no-repeat right bottom;
  background-size: 3.4vw auto;
 }
 .contact_common h2 .yellow {
  margin-right: 0.5vw;
  font-size: 5.8vw;
 }
 .contact_common .white_box .flex_wrap {
  align-items: center;
  justify-content: center;
  width: 100%;
 }
 .contact_common .white_box {
  width: 100%;
  margin: 4vw auto 0;
  padding: 5.3vw 5.3vw 8vw;
  border-radius: 2vw;
 }
	.contact_common .white_box p.tx_ca {
		font-size: 2.8vw;
		padding: 4.0vw 0px 0px 0px;
		line-height: 1.2;
	}
 .contact_common .white_box .flex_wrap {
  column-gap: 0;
  row-gap: 4vw;
 }
 .contact_common .mailbox a {
  font-size: 3.7vw;
  letter-spacing: 0;
  width: 70vw;
  height: 13vw;
  border-radius: 13vw;
  padding: 4.5vw 0 4.5vw;
  box-shadow: 0 1vw 0 #c06a1b;
 }
 .contact_common .mailbox a:hover {
  transform: translate3d(0, 1vw, 0);
 }
 .contact_common .mailbox a span {
  padding-left: 5.4vw;
  background: url(../images/ic_mail.svg) no-repeat left center;
  background-size: 4vw auto;
 }
 .contact_common .white_box .flex_wrap .telbox img {
  width: 65vw;
  height: auto;
 }
	.contact_common .telbox p {
		font-size: 3.6vw;
		margin-bottom: 2.0vw;
	}

.contact_common .wrap::before{
	width: 34vw;
	height: 28vw;
	right: 0vw;
	bottom: -8vw;	
}
	
 /*=============================
		okomari
===============================*/
 #okomari {
  padding: 10.6vw 0;
 }
 #okomari h2 {
  font-size: 4.4vw;
  margin-bottom: 6.6vw;
 }
 #okomari h2 .kakko {
  display: block;
  padding: 0;
  background: none;
  line-height: 1.4;
 }
 #okomari h2 .dot::before {
  display: none;
 }
 #okomari h2 .underline {
  font-size: 5.2vw;
  padding: 0 0 1vw;
  background: none;
  border-bottom: 0.4vw solid #0e5e99;
 }
 #okomari .imgbox {
  background: url(../images/okomari_img.webp) no-repeat bottom center;
  background-size: 50% auto;
  height: 52vw;
 }
 #okomari .imgbox .fukidashi {
  font-size: 3.7vw;
  width: 33vw;
  height: 19vw;
  padding: 5vw 0 0;
 }
 #okomari .imgbox .fukidashi span {
  font-size: 3.7vw;
  padding-bottom: 0.2vw;
 }
 #okomari .imgbox .fukidashi span::before {
  height: 1.2vw;
 }
 #okomari .imgbox .fukidashi.no1 {
  left: 10vw;
  top: 0;
 }
 #okomari .imgbox .fukidashi.no2 {
  right: 10vw;
  top: 0;
 }
 #okomari .imgbox .fukidashi.no3 {
  left: -2vw;
  top: 18.5vw;
 }
 #okomari .imgbox .fukidashi.no4 {
  right: -2vw;
  top: 18.5vw;
 }
 /*=============================
		kaizen
===============================*/
 #kaizen {
  background: url("../images/kaizen_bg.webp") no-repeat top center, #f6fdfe;
  background-size: cover;
 }
 #kaizen::before {
  top: -0.1vw;
  margin-left: -9vw;
  border-width: 5vw 9vw 0 9vw;
  border-color: #f4f4f4 transparent transparent transparent;
 }
 #kaizen .wrap {
  padding: 16vw 5.3vw 12vw;
 }
 #kaizen h2 {
  font-size: 4.6vw;
  line-height: 1.4;
  letter-spacing: 0;
 }
 #kaizen h2 .kakko {
  font-size: 5.8vw;
  padding: 0 4vw;
 }
 #kaizen h2 .kakko::before, #kaizen h2 .kakko::after {
  font-size: 5.8vw;
 }
 #kaizen h2 .kakko::before {
  left: -2vw;
 }
 #kaizen h2 .kakko::after {
  right: -2vw;
 }
 #kaizen h2 .underline {
  font-size: 5.8vw;
  padding-bottom: 0.8vw;
  border-bottom: 0.6vw solid #ff9127;
  margin-right: 0.5vw;
 }
 #kaizen h2 .small {
  padding-left: 0;
 }
 #kaizen h2 .large {
  font-size: 4.4vw;
 }
 #kaizen .fukidashi {
  display: none;
 }
 #kaizen .white_box {
  width: 100%;
  margin: 5.3vw auto 0;
  border: 0.8vw solid #cfdfeb;
 }
 #kaizen .white_box h3 {
  font-size: 4.4vw;
  line-height: 1.2;
  padding: 3vw 0;
  border-radius: 1vw;
  width: 100%;
  margin: 0 auto 6vw;
 }
 #kaizen .white_box h3 span {
  font-size: 5.4vw;
 }
 #kaizen .white_box h3::before {
  bottom: -2.8vw;
  margin-left: -4vw;
  border-style: solid;
  border-width: 3vw 4vw 0 4vw;
  border-color: #0e5e99 transparent transparent transparent;
 }
 #kaizen .white_box .txt {
  margin-bottom: 4vw;
 }
 #kaizen .white_box .mini {
  display: none;
 }
 /*=============================
		merit
===============================*/
 #merit {
  padding-bottom: 12vw;
 }
 #merit .ttl_fukidashi {
  padding: 5.3vw 0 6vw;
  margin-bottom: 14vw;
 }
 #merit .ttl_fukidashi h2 {
  font-size: 5.2vw;
 }
 #merit .ttl_fukidashi .large {
  margin-top: 0;
 }
 #merit .ttl_fukidashi .slash {
  padding: 0 6vw;
  font-size: 3.7vw;
 }
 #merit .ttl_fukidashi h2 .yellow {
  font-size: 9vw;
 }
 #merit .merit_section {
  margin-bottom: 16vw;
 }
 #merit .merit_section:last-child {
  margin-bottom: 0;
 }
 #merit .num {
  font-size: 6.6vw;
  width: 18vw;
  height: 18vw;
  margin: 0 auto 2vw;
  padding: 5vw 0 0;
 }
 #merit .num span {
  font-size: 3.7vw;
 }
 #merit h3 {
  font-size: 6.8vw;
  margin-bottom: 32vw;
  letter-spacing: 0;
  line-height: 1.3;
 }
 /*whitebox*/
 #merit .white_box {
  border: 0.8vw solid #0e5e99;
 }
 #merit .white_box .hl_underline {
  margin-bottom: 4vw;
 }
 #merit .white_box .check {
  background: url(../images/merit_check_center.svg) no-repeat center !important;
  background-size: 100% auto;
  width: 22vw;
  height: 7vw;
  margin: 0 auto 1vw;
 }
 #merit .white_box .check.center {
  margin: 0 auto 1vw;
 }
 /*solution*/
 #merit .white_box .blue_box {
  border-radius: 1vw;
  padding: 16vw 5.3vw 5.3vw;
 }
 #merit .white_box .blue_box::before {
  width: 18vw;
  height: 20vw;
  margin-left: -9vw;
  top: -7vw;
 }
 #merit .white_box .blue_box .hl_solution {
  font-size: 4.2vw;
  margin-bottom: 4.2vw;
  letter-spacing: 0;
 }
 #merit .white_box .blue_box .hl_solution span {
  margin: 1vw auto;
  padding: 0;
  border-bottom: none;
  font-size: 6.2vw;
 }
 #merit .white_box .blue_box .txt {
  margin-bottom: 8vw;
 }
 #merit .blue_box .imgbox {
  width: 100%;
  margin: 0 auto;
 }
 #merit .blue_box .imgbox img {
  width: 100%;
  height: auto;
 }
 #merit .white_box .blue_box .imgbox h5 {
  font-size: 4.3vw;
  padding: 2vw 2vw 2.2vw;
  line-height: 1.2;
  border-radius: 1vw;
  margin-bottom: 3vw;
 }
 #merit .white_box .blue_box .imgbox .fukidashi {
  display: none;
 }
 /*1.health*/
 #merit .flex_wrap.health {
  width: 100%;
  justify-content: space-between;
  align-items: center;
 }
 #merit .flex_wrap.health .textbox {
  width: 100%;
  order: 1;
 }
 #merit .flex_wrap.health .imgbox {
  width: 100%;
  margin-top: 6vw;
  order: 2;
 }
 #merit .flex_wrap.health .imgbox img {
  width: 100%;
  height: auto;
 }
 #merit .flex_wrap.health.border {
  margin: 8vw 0 8vw;
  padding-top: 8vw;
  border-top: 0.8vw dotted #ccc;
 }
 /*2.ketsuro*/
 #merit .white_box .textbox.ketsuro, #merit .white_box .ketsuro_flow, #merit .white_box .textbox.eco {
  width: 100%;
  margin: 0 auto;
 }
 #merit .white_box .textbox.ketsuro .hl_underline {
  width: 100%;
  margin: 0 auto 4vw;
  text-align: center;
 }
 #merit .white_box .ketsuro_flow {
  margin: 8vw auto 0;
 }
 #merit .white_box .ketsuro_flow .gray {
  font-size: 4.2vw;
  margin-bottom: 0;
  padding: 2.4vw 0 2.8vw;
  border-radius: 12vw;
 }
 #merit .white_box .ketsuro_flow .flex_wrap .flow_box {
  width: 100%;
  padding-bottom: 12vw;
 }
 #merit .white_box .ketsuro_flow .flex_wrap .flow_box img {
  display: block;
  margin: 0 auto;
  width: 75%;
 }
 #merit .white_box .ketsuro_flow .flex_wrap .flow_box::after {
  width: 6vw;
  height: 13vw;
  right: 50%;
  margin-right: -3vw;
  margin-top: 0;
  top: auto;
  bottom: -2vw;
  transform: rotate(90deg);
 }
 #merit .white_box .ketsuro_flow .flex_wrap .flow_box:last-child::after {
  display: none;
 }
 #merit .white_box .ketsuro_flow .flex_wrap .flow_box p {
  margin-top: 0;
  line-height: 1.4;
 }
 /*3.eco*/
 #merit .white_box .textbox.eco .hl_underline {
  width: 100%;
  margin: 0 auto 4vw;
  text-align: center;
 }
 #merit .blue_box.eco {
  padding-top: 5.3vw;
  margin-top: 5.3vw;
 }
 #merit .blue_box.eco::before {
  display: none;
 }
 #merit .blue_box .imgbox.eco {
  width: 100%;
 }
 #merit .blue_box .imgbox .condition {
  font-size: 2.6vw;
  line-height: 1.5;
  margin-top: 4vw;
 }
 /*illust*/
 #merit .merit_section .white_box::before, #merit .merit_section .white_box::after {
  content: "";
  width: 30vw;
  height: 30vw;
  position: absolute;
  top: -30vw;
  z-index: -1;
 }
 #merit .merit_section:nth-child(1) .white_box::before {
  background: url("../images/merit_ttl_1_left.webp") no-repeat center bottom;
  background-size: 100% auto;
  left: 13vw;
 }
 #merit .merit_section:nth-child(1) .white_box::after {
  background: url("../images/merit_ttl_1_right.webp") no-repeat center bottom;
  background-size: 100% auto;
  right: 13vw;
 }
 #merit .merit_section:nth-child(2) .white_box::before {
  background: url("../images/merit_ttl_2_left.webp") no-repeat center bottom;
  background-size: 100% auto;
  left: 13vw;
 }
 #merit .merit_section:nth-child(2) .white_box::after {
  background: url("../images/merit_ttl_2_right.webp") no-repeat center bottom;
  background-size: 100% auto;
  right: 13vw;
 }
 #merit .merit_section:nth-child(3) .white_box::before {
  background: url("../images/merit_ttl_3_left.webp") no-repeat center bottom;
  background-size: 100% auto;
  left: 14vw;
 }
 #merit .merit_section:nth-child(3) .white_box::after {
  background: url("../images/merit_ttl_3_right.webp") no-repeat center bottom;
  background-size: 100% auto;
  right: 14vw;
 }
 /*=============================
		hojokin
===============================*/
 #hojokin {
  background: url(../images/hojokin_bg.svg), #f0f8ea;
  background-size: 4vw auto;
  padding: 4vw 0 12vw;
 }
 #hojokin h2 {
  margin-bottom: 4vw;
  letter-spacing: 0;
 }
 #hojokin h2 .kakko {
  display: block;
  padding: 0;
  background: none;
 }
 #hojokin h2 .fukidashi {
  width: 18vw;
  height: 15vw;
  top: 0;
  left: 3vw;
 }
 #hojokin h2 .small {
  font-size: 3.7vw;
  display: block;
  padding: 10vw 0 0 20vw;
  margin-bottom: 4vw;
 }
 #hojokin h2 .dot::before {
  width: 0.8vw;
  height: 0.8vw;
  border-radius: 1vw;
  top: -1.2vw;
  margin-left: -0.4vw;
 }
 #hojokin h2 .num {
  font-size: 14vw;
 }
 #hojokin h2 .otoku {
  font-size: 4.6vw;
  vertical-align: 0.7vw;
 }
 #hojokin h2 .green {
  width: 29vw;
  height: 11vw;
  background: url(../images/hojokin_txt_200.svg) no-repeat center;
  background-size: 100% auto;
  vertical-align: -1.5vw;
 }
 /*mado*/
 #hojokin .mado_box .hl_green {
  font-size: 4.6vw;
  line-height: 1.2;
  padding: 3vw 0;
  border-radius: 1vw;
  width: 100%;
  margin: 0 auto 8vw;
  border: 0.5vw solid #66b732;
  background: none;
  color: #66b732;
 }
 #hojokin .mado_box .hl_green span {
  color: #ff9127;
 }
 #hojokin .mado_box .hl_green::before {
  bottom: -3vw;
  margin-left: -4vw;
  border-width: 3vw 3vw 0 3vw;
 }
 #hojokin .mado_box .flex_wrap {
  justify-content: center;
 }
 #hojokin .mado_box .left_box {
  width: 100%;
 }
 #hojokin .mado_box .left_box .maru {
  font-size: 3.4vw;
  padding: 7.5vw 0;
  width: 18vw;
  height: 18vw;
  border-radius: 18vw;
  left: -3vw;
  top: -4vw;
 }
 #hojokin .mado_box .left_box h4 {
  font-size: 5.2vw;
  width: 100%;
  height: auto;
  text-align: center;
  padding: 2vw 2vw 2.6vw 14vw;
  border-radius: 1vw;
  margin-bottom: 4vw;
 }
 #hojokin .mado_box .left_box h4::after {
  display: none;
 }
 #hojokin .mado_box .right_box {
  width: 100%;
 }
 #hojokin .mado_box .right_box .txt {
  font-size: 4.8vw;
  line-height: 1.6;
 }
 #hojokin .mado_box .right_box .txt span {
  display: inline;
  color: #ff9127;
  padding-bottom: 0.2vw;
  border-bottom: 0.6vw solid #ff9127;
 }
 #hojokin .mado_box .right_box .mini {
  font-size: 3.4vw;
  margin-top: 3vw;
 }
 #hojokin .mado_box .check_box {
  margin-top: 8vw;
 }
 #hojokin .mado_box .check_box h4 {
  font-size: 4.2vw;
  padding: 3.2vw 4vw 3vw;
 }
 #hojokin .mado_box .check_box h4 span {
  padding-left: 5.5vw;
  background: url("../images/hojokin_ic_check.svg") no-repeat left center;
  background-size: 4vw auto;
 }
 #hojokin .mado_box .check_box .textbox {
  padding: 4vw 4vw 4vw;
  border: 0.8vw solid #e5f7fb;
  letter-spacing: 0.05em;
 }
 #hojokin .mado_box .check_box .textbox .txt {
  font-size: 4vw;
  margin-bottom: 2vw;
  line-height: 1.4;
 }
 #hojokin .mado_box .check_box .textbox .txt.maru {
  padding-left: 4vw;
 }
 #hojokin .mado_box .check_box .textbox .txt.maru::before {
  width: 2.6vw;
  height: 2.6vw;
  border-radius: 2.6vw;
  top: 1.5vw;
 }
 #hojokin .mado_box .check_box .textbox .mini {
  font-size: 3.4vw;
  line-height: 1.4;
  padding-left: 4vw;
  text-indent: -4vw;
 }
 #hojokin .mado_box .check_box .textbox .graybox {
  margin-top: 4vw;
  padding: 4vw;
 }
 #hojokin .mado_box .check_box .textbox .condition {
  font-size: 3.4vw;
  line-height: 1.4;
  margin-bottom: 2vw;
 }
 /*kodomo*/
 #hojokin .kodomo_box {
  padding-top: 18vw;
 }
 #hojokin .kodomo_box .more {
  font-size: 4vw;
  padding-top: 2.6vw;
  width: 36vw;
  height: 14vw;
  margin-left: -18vw;
 }
 #hojokin .kodomo_box .more::before {
  border-width: 14vw 18vw 0 18vw;
 }
 #hojokin .kodomo_box h3 {
  font-size: 4.8vw;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 5.3vw;
 }
 #hojokin .kodomo_box h3 .slash {
  padding: 0 7vw;
  background: url("../images/hojokin_slash_left.svg") no-repeat left bottom 1vw, url("../images/hojokin_slash_right.svg") no-repeat right bottom 1vw;
  background-size: 4vw auto;
 }
 #hojokin .kodomo_box h3 .green {
  color: #66b732;
 }
 #hojokin .kodomo_box .txt {
  line-height: 2;
  margin-bottom: 6.6vw;
 }
 #hojokin .kodomo_box .target {
  font-size: 3.7vw;
  line-height: 1.2;
  margin-bottom: 0;
 }
 #hojokin .kodomo_box .target span {
  padding: 2vw 4vw 2vw;
  border: 0.4vw solid #66b732;
  border-radius: 1vw;
  line-height: 1.2;
 }
 #hojokin .kodomo_box .yellow_box {
  margin-top: 46vw;
  border-radius: 1vw;
  padding: 5.3vw;
 }
 #hojokin .kodomo_box .yellow_box::before {
  width: 46vw;
  height: 38vw;
  right: 50%;
  margin-right: -23vw;
  top: -42vw;
 }
 #hojokin .kodomo_box .yellow_box .fukidashi {
  font-size: 3.7vw;
  padding: 0;
  border-radius: 8vw;
  width: 100%;
  margin: 0 auto 4vw;
  top: 0;
  left: 0;
  right: 0;
  background: none;
  color: #0e5e99;
  position: relative;
 }
 #hojokin .kodomo_box .yellow_box .fukidashi::after {
  display: none;
 }
 #hojokin .kodomo_box .yellow_box .example_box {
  margin-bottom: 6.6vw;
 }
 #hojokin .kodomo_box .yellow_box .example_box p {
  font-size: 4.2vw;
  text-align: center;
 }
 #hojokin .kodomo_box .yellow_box .example_box p .large {
  font-size: 5vw;
 }
 #hojokin .kodomo_box .yellow_box .example_box p.blue {
  margin-bottom: 6.6vw;
 }
 #hojokin .kodomo_box .yellow_box .example_box p .category {
  font-size: 3.7vw;
  line-height: 1.3;
  width: 100%;
  height: auto;
  text-align: center;
  padding: 2vw;
  margin: 0 auto 2vw;
  vertical-align: 0;
  border-radius: 1vw;
 }
 #hojokin .kodomo_box .yellow_box .example_box p.blue .category {
  background: #00add6;
 }
 #hojokin .kodomo_box .yellow_box .example_box p.green .category {
  background: #66b732;
 }
 #hojokin .kodomo_box .yellow_box .example_box p .category::after {
  display: none;
 }
 #hojokin .kodomo_box .yellow_box p.orange {
  font-size: 4.2vw;
  letter-spacing: 0;
 }
 #hojokin .kodomo_box .yellow_box p.orange .underline {
  font-size: 5vw;
  padding-bottom: 1vw;
  border-bottom: 0.6vw solid #ffc893;
 }
 #hojokin .kodomo_box .btn_wrap {
  margin-top: 6.6vw;
  row-gap: 4vw;
 }
 #hojokin .kodomo_box .btn_wrap .btn_large {
  font-size: 3.5vw;
  letter-spacing: 0;
  width: 100%;
  height: 18vw;
  border-radius: 2vw;
  padding: 4.4vw 4vw 4vw 11vw;
 }
 #hojokin .kodomo_box .btn_wrap .btn_large span {
  font-size: 3.2vw;
  margin-top: 1vw;
 }
 #hojokin .kodomo_box .btn_wrap .btn_large.blue {
  border: 0.5vw solid #00add6;
  box-shadow: 0 1vw 0 #00add6;
  background: url(../images/ic_link_b.svg) no-repeat left 3.8vw center, #fff;
  background-size: 4vw auto;
 }
 #hojokin .kodomo_box .btn_wrap .btn_large.green {
  border: 0.5vw solid #66b732;
  box-shadow: 0 1vw 0 #66b732;
  background: url(../images/ic_link_g.svg) no-repeat left 3.8vw center, #fff;
  background-size: 4vw auto;
 }
 #hojokin .kodomo_box .btn_wrap .btn_large:hover {
  box-shadow: none;
  transform: translate3d(0, 1vw, 0);
 }
 /*=============================
		simulation
===============================*/
 #simulation {
  padding: 12vw 0;
 }
 #simulation h2 {
  font-size: 6vw;
  margin-bottom: 6vw;
 }
 #simulation h2 .small {
  font-size: 3.7vw;
  margin-bottom: 2vw;
 }
 #simulation h2 .plus {
  display: inline-block;
  margin: 0 1vw;
 }
 #simulation h2 .category {
  padding: 1.2vw 4vw 1.5vw;
  letter-spacing: 0;
  border-radius: 6vw;
 }
 #simulation .flex_wrap {
  row-gap: 8vw;
 }
 #simulation .imgbox, #simulation .imgbox img, #simulation .textbox {
  width: 100%;
 }
 #simulation table {
  margin: 0 auto;
 }
 #simulation table th, #simulation table td {
  padding: 2.6vw 2vw 3vw;
 }
 #simulation table td.total {
  font-size: 6vw;
 }
 #simulation .mado_txt, #simulation .kodomo_txt {
  display: none;
 }
 /*omakase*/
 #simulation .omakase_box {
  border-radius: 1vw;
  padding: 6vw 0 3.6vw 25vw;
  margin-top: 8vw;
  letter-spacing: 0;
 }
 #simulation .omakase_box:before {
  background: url(../images/simulation_img_omakase.webp) no-repeat bottom center;
  background-size: 100% auto;
  left: 1vw;
  width: 22vw;
  height: 26vw;
 }
 #simulation .omakase_box .fukidashi {
  font-size: 3.4vw;
  padding: 1vw 2vw 1.5vw;
  letter-spacing: 0;
  border-radius: 5vw;
  width: 38vw;
  position: absolute;
  left: 25vw;
  top: -2.6vw;
 }
 #simulation .omakase_box .fukidashi::before {
  bottom: -0.9vw;
  margin-left: -1.5vw;
  border-width: 1vw 1.5vw 0 1.5vw;
  border-color: #0e5e99 transparent transparent transparent;
 }
 #simulation .omakase_box .daiko {
  font-size: 3.7vw;
 }
 #simulation .omakase_box .daiko .red {
  font-size: 4.4vw;
 }
 /*=============================
		product
===============================*/
 #product {
  padding: 12vw 0;
  background: url("../images/product_bg.webp"), #f4f4f4;
  background-size: 100% auto;
 }
 #product h2 {
  font-size: 7vw;
  padding-top: 14vw;
  margin-bottom: 5.3vw;
 }
 #product h2 span {
  font-size: 3.7vw;
  padding: 2vw 4vw 2.6vw;
  border-radius: 12vw;
  margin-left: -26.2vw;
 }
 #product h2 span::before {
  bottom: -2vw;
  margin-left: -4vw;
  border-width: 3vw 3vw 0 3vw;
 }
 #product .product_box {
  border: 0.8vw solid #d9d9d9;
  margin-bottom: 12vw;
 }
 #product .product_box .textbox {
  width: 100%;
  order: 1;
 }
 #product .product_box .textbox .copy {
  font-size: 4.4vw;
  margin-bottom: 2vw;
  text-align: center;
  margin-top: 2vw;
 }
 #product .product_box .textbox .copy .dot::before {
  width: 0.8vw;
  height: 0.8vw;
  border-radius: 0.8vw;
  top: -1.5vw;
  margin-left: -0.4vw;
 }
 #product .product_box .textbox .copy .small {
  font-size: 3.7vw;
 }
 #product .product_box .textbox h3 {
  font-size: 8vw;
  padding-left: 0;
  margin-bottom: 4vw;
  text-align: center;
  letter-spacing: 0;
 }
 #product .product_box .textbox h3 .maru {
  font-size: 4.2vw;
  display: inline-block;
  line-height: 1;
  width: auto;
  height: auto;
  padding: 1.2vw 3vw 1.8vw;
  border-radius: 0.5vw;
  background: #f49127;
  text-align: center;
  color: #fff;
  position: relative;
  left: auto;
  top: auto;
  margin-top: 0;
  vertical-align: 1.2vw;
  margin-right: 2vw;
 }
 #product .product_box .textbox .txt {
  line-height: 2;
 }
 #product .product_box .textbox .type_wrap {
  column-gap: 3vw;
 }
 #product .product_box .textbox .type_wrap dl {
  width: calc((100% - 3vw) / 2);
 }
 #product .product_box .textbox .type_wrap dl dt {
  width: 24vw;
  font-size: 3.7vw;
  z-index: 2;
  top: -2vw;
  left: 50%;
  margin-left: -12vw;
 }
 #product .product_box .textbox dl dd {
  font-size: 3.7vw;
  width: 100%;
  height: 16vw;
  padding: 2.6vw 0 2vw;
  border: 0.4vw solid #0e5e99;
  border-radius: 0.5vw;
 }
 #product .product_box .textbox .category {
  width: 100%;
  margin: 4vw auto 8vw;
  padding: 2vw 0 2.6vw;
  font-size: 4.2vw;
  border-radius: 0.5vw;
 }
 #product .product_box .textbox .category .ic {
  padding-left: 5.5vw;
  padding-bottom: 0.4vw;
 }
 #product .product_box .textbox .category.blue .ic {
  background: url("../images/product_ic_check_b.svg") no-repeat left center;
  background-size: 4vw auto;
 }
 #product .product_box .textbox .category.green .ic {
  background: url(../images/product_ic_check_g.svg) no-repeat left top 0.6vw;
  background-size: 4vw auto;
  text-align: left;
  line-height: 1.2;
 }
 #product .product_box .imgbox {
  width: 100%;
  border-radius: 1vw;
  overflow: hidden;
  margin-top: 6.6vw;
  order: 2;
 }
 #product .product_box .imgbox img {
  width: 100%;
  height: auto;
 }
 /*flow*/
 #product .product_box .flow_box {
  width: 100%;
  margin: 8vw auto 6vw;
 }
 #product .product_box .flow_box h4 {
  font-size: 4.2vw;
  border-radius: 0.5vw;
  padding: 2vw 0 2.6vw;
  margin-bottom: 4vw;
 }
 #product .product_box .flow_box img {
  margin: 0 auto 4vw;
  width: 100%;
  height: auto;
 }
 #product .product_box .flow_box .video {
  width: 100%;
  aspect-ratio: 16 / 9;
 }
 #product .product_box .flow_box .video iframe {
  width: 100%;
  height: 100%;
 }
 #product .product_box .flow_box ol {
  border-radius: 1vw;
  padding: 4vw;
  flex-wrap: wrap;
  column-gap: 0;
  justify-content: center;
  align-items: center;
  margin-top: 4vw;
  overflow: hidden;
 }
 #product .product_box .flow_box ol.short {
  width: 100%;
  column-gap: 0;
  margin: 0 auto;
 }
 #product .product_box .flow_box ol li {
  width: 100%;
  padding-left: 6vw;
  letter-spacing: 0;
  display: block;
  margin-bottom: 2vw;
  font-size: 3.5vw;
 }
 #product .product_box .flow_box ol li:last-child {
  margin-bottom: 0;
 }
 #product .product_box .flow_box ol li::after {
  display: none;
 }
 #product .product_box .flow_box ol li:last-child::after {
  display: none;
 }
 #product .product_box .flow_box ol li span {
  display: inline-block;
  line-height: 1;
  width: 5vw;
  height: 5vw;
  border-radius: 5vw;
  padding: 0.6vw 0;
  left: 0;
  top: 0;
  margin-top: 0;
 }
 /*btn*/
 #product .product_box .btn_wrap {
  flex-wrap: wrap;
  border-radius: 1vw;
  padding: 5.3vw 0;
  column-gap: 0;
  row-gap: 4vw;
 }
 #product .product_box .btn_wrap a {
  font-size: 4.2vw;
  width: 70vw;
  height: 18vw;
  border-radius: 18vw;
  border: 0.5vw solid #b7cfe0;
  padding: 4.2vw 0 4.6vw;
  box-shadow: 0 1vw 0 #b7cfe0;
 }
 #product .product_box .btn_wrap a:hover {
  box-shadow: none;
  transform: translate3d(0, 1vw, 0);
 }
 #product .product_box .btn_wrap a .ic {
  font-size: 3.7vw;
  padding-left: 6vw;
  background: url(../images/ic_link_n.svg) no-repeat left center;
  background-size: 4.2vw auto;
 }
 #product .product_box .btn_wrap a .mini {
  font-size: 2.8vw;
  letter-spacing: 0;
  margin-top: 1.3vw;
 }
 /*small*/
 #product .product_box.small .textbox {
  width: 100%;
 }
 #product .product_box.small .imgbox {
  width: 100%;
  margin-bottom: 4vw;
 }
 #product .product_box.small .imgbox img {
  width: 50% !important;
  height: auto;
 }
 #product .product_box.small .textbox .copy {
  font-size: 3.7vw;
  margin-bottom: 2vw;
 }
 #product .product_box.small .textbox h3 {
  font-size: 8vw;
  padding-left: 0;
  margin-bottom: 4vw;
 }
 #product .product_box.small .textbox h3 .maru {
  font-size: 4.2vw;
  display: inline-block;
  line-height: 1;
  width: auto;
  height: auto;
  padding: 1.2vw 3vw 1.8vw;
  border-radius: 0.5vw;
  background: #f49127;
  text-align: center;
  color: #fff;
  position: relative;
  left: auto;
  top: auto;
  margin-top: 0;
  vertical-align: 1.2vw;
  margin-right: 2vw;
  margin-bottom: 2vw;
 }
 #product .product_box.small .category {
  width: 100%;
  font-size: 4.4vw;
 }
 #product .product_box.small .category .mini {
  display: inline-block;
  position: absolute;
  color: #66b732;
  right: 50%;
  margin-right: -24vw;
  top: auto;
  bottom: -11vw;
  line-height: 1.3;
  text-align: center;
  font-size: 3.6vw;
 }
 #product .slash {
  font-size: 4.4vw;
  line-height: 1.3;
  text-align: center;
  padding-top: 15vw;
  background: url(../images/product_ic_plus.svg) no-repeat top center;
  background-size: 9vw auto;
  margin: -4vw auto 5.3vw;
 }
 #product .slash span {
  display: inline-block;
  padding: 0 8vw;
 }
 #product .slash span::before, #product .slash span::after {
  position: absolute;
  bottom: 0;
 }
 #product .slash span::before {
  content: "＼";
  transform: rotate(15deg);
  left: 0;
 }
 #product .slash span::after {
  content: "／";
  transform: rotate(-15deg);
  right: 0;
 }
 /*=============================
		company
===============================*/
 #company {
  padding: 0 0 12vw;
 }
 #company .ttl_fukidashi {
  padding: 4vw 0 4.8vw;
  margin-bottom: 10vw;
 }
 #company .ttl_fukidashi .wrap {
  overflow: visible;
 }
 #company .ttl_fukidashi .wrap::after {
  width: 30vw;
  height: 40vw;
  background: url(../images/company_img_ttl.webp) no-repeat bottom center;
  background-size: 100% auto;
  bottom: -4.8vw;
 }
 #company .ttl_fukidashi h2 {
  font-size: 4.4vw;
  line-height: 1.4;
 }
 #company .ttl_fukidashi h2 .yellow {
  font-size: 6vw;
 }
 #company .flex_wrap.intro .textbox {
  width: 100%;
  margin-top: 5.3vw;
 }
 #company .flex_wrap.intro .textbox .hl_underline {
  font-size: 4.4vw;
  margin-bottom: 4vw;
  line-height: 1.5;
 }
 #company .flex_wrap.intro .textbox .hl_underline span {
  font-size: 6vw;
 }
 #company .flex_wrap.intro .textbox .txt {
  line-height: 2.2;
 }
 #company .flex_wrap.intro .imgbox {
  border-radius: 2vw;
  overflow: hidden;
  width: 100%;
 }
 #company .flex_wrap.intro .imgbox img {
  display: block;
  width: 100%;
  height: auto;
 }
 #company .img_wrap {
  column-gap: 2vw;
  margin: 4vw auto 12vw;
 }
 #company .img_wrap div {
  border-radius: 1vw;
  overflow: hidden;
  width: calc((100% - 2vw) / 3);
 }
 #company .img_wrap div img {
  display: block;
 }
 /*=============================
		flow_window
===============================*/
 #flow_window {
  width: 100%;
 }
 #flow_window h3 {
  font-size: 5.2vw;
  padding: 2vw 0 2.1vw;
  border-radius: 2vw 2vw 0 0;
 }
 #flow_window h3 span {
  display: inline-block;
  padding: 0.8vw 0 1vw 8vw;
  background: url(../images/flow_ic_ttl.svg) no-repeat left center;
  background-size: 5.8vw auto;
 }
 #flow_window .white_box {
  border-radius: 0 0 2vw 2vw;
  padding: 0 10.6vw;
 }
 #flow_window .flow_box {
  padding: 8vw 0 6.6vw;
  justify-content: center;
  row-gap: 5.3vw;
 }
 #flow_window .flow_box::before {
  margin-left: -6vw;
  border-width: 4vw 6vw 0 6vw;
 }
 #flow_window .flow_box:last-child {
  border-bottom: none;
 }
 #flow_window .flow_box:first-child::before {
  display: none;
 }
 #flow_window .flow_box .textbox {
  width: 100%;
  order: 2;
  text-align: center;
 }
 #flow_window .flow_box .textbox h4 {
  font-size: 4.8vw;
  padding-left: 9vw;
  display: inline-block;
 }
 #flow_window .flow_box .textbox h4 span {
  width: 7vw;
  height: 7vw;
  border-radius: 7vw;
  padding: 0.8vw 0;
  margin-top: -3.5vw;
 }
 #flow_window .flow_box .textbox p {
  line-height: 1.8;
  margin-top: 5.3vw;
  text-align: left;
 }
 #flow_window .flow_box .textbox p a {
  color: #00add6;
  text-decoration: underline;
  transition: opacity .6s ease;
 }
 #flow_window .flow_box .textbox p a:hover {
  opacity: 0.6;
 }
 #flow_window .flow_box .imgbox {
  width: 30vw;
  height: 30vw;
  border-radius: 35vw;
  order: 1;
 }
 
}