@charset "utf-8";

/* ---------------------------------------------------
   File: index.css
   Version: 1.0.0
   Update: 2022-11-24
   Author: https://flowlab.co.jp

   (c)2007-2022 Flowlab inc. All Rights Reserved.
--------------------------------------------------- */




/* ===========================================================================================================================================

   WIDE DESKTOP LAYOUT

=========================================================================================================================================== */

body {
	font-family: 'Noto Sans JP';
}




/* ====================================================
		Main
==================================================== */
#main {
	padding: 80px 0 170px;
}

/* -------------------------------
		Catch Copy
------------------------------- */
#main h2 {
	width: 600px;
	margin: 0 auto;
}

/* Text */
#main .txt {
	width: 600px;
	line-height: 2.8em;
	margin: 0 auto;
}

/* Small */
#main small {
	width: 600px;
	font-size: 0.6em;
	text-align: right;
	display: block;
	margin: 0 auto 60px;
}

/* Img - Item Lineup */
#main .img-responsive {
	width: 780px;
	margin: 0 auto;
}




/* ====================================================
		Trouble
==================================================== */
#trouble {

}
#trouble .slide {
	width: 80%;
	margin: 0 auto;
}

/* -------------------------------
		 List
------------------------------- */
#trouble ul {
	padding: 0;
	line-height: 2em;
}
#trouble ul li {
	padding: 0 2%;
}
#trouble ul li img {
	width: 90%;
	margin: 0 auto;
	padding: 0 0 10px;
}




/* ====================================================
		Feature
==================================================== */
#feature {
	
}
#feature .slide {
	width: 80%;
	margin: 0 auto;
}

/* -------------------------------
		 Layout
------------------------------- */
#feature section {
	padding: 0 2%;
	line-height: 2em;
}

/* No */
#feature section .tit_no {
	text-align: center;
	font-size: 0.8em;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1em;
}

/* Image */
#feature section img {
	width: 30%;
	margin: 15px auto;
}

/* Title */
#feature section h3 {
	font-weight: 800;
	padding-bottom: 30px;
}
#feature section h3 span {
	font-size: 0.4em;
}

/* Attention */
#feature section small {
	display: block;
	line-height: 1.6em;
	padding-top: 10px;
}




/* ====================================================
		Menu
==================================================== */
#menu {
	padding-bottom: 0;
}
#menu #menuLineup {
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

/* -------------------------------
		 Layout
------------------------------- */
#menu section {
	width: 25%;
	border-top: #e3e3e3 solid 1px;
	border-right: #e3e3e3 solid 1px;
	margin: 0;
	padding: 4%;
}
#menu section.omega {
	border-right: none;
}

/* Logo */
#menu section .menuLogo {
	width: 50%;
	margin: 0 auto;
}

/* Title */
#menu section h3 {
	font-size: 1.4em;
	font-weight: 800;
	padding-bottom: 20px;
}
#menu section h3 span {
  font-size: .8rem;
}

/* List */
#menu section ul {
	padding: 0;
}
#menu section ul li {
	font-size: 0.8em;
	margin-left: 1em;
	position: relative;
}
#menu section ul li::after {
	display: block;
  content: '';
  position: absolute;
  top: .65em;
  left: -1em;
  width: 5px;
  height: 1px;
  background-color: #666;
}




/* ====================================================
		Case Study
==================================================== */
#case-study {
	
}
#case-study .slide {
	width: 80%;
	margin: 0 auto;
}

/* -------------------------------
		About - JOSH
------------------------------- */
#aboutJOSH {
	width: 740px;
	border: #363636 1px solid;
	padding: 50px 10%;
	margin: 0 auto 100px;
	line-height: 2em;
}
#aboutJOSH .grid_4 img {
	width: 80%;
	margin: 0 auto;
}

/* Title */
#aboutJOSH h3 {
	text-align: left;
	font-size: 0.8em;
	font-weight: 800;
	padding: 0 0 20px;
}
#aboutJOSH h3 ruby {
	font-size: 2.4em;
}
#aboutJOSH h3 ruby rt,
#aboutJOSH h3 ruby rp{
	font-size: 0.4em;
}

/* -------------------------------
		Case Box
------------------------------- */
#case-study .caseBox {
	clear: both;
	line-height: 1.8em;
	padding-bottom: 100px;
}

/* Title */
#case-study .caseBox h4 {
	font-weight: 800;
	font-size: 2em;
	padding-bottom: 30px;
	margin-bottom: 0;
}
#case-study .caseBox h4 span {
	font-size: 0.3em;
	padding-bottom: 10px;
	display: block;
}

/* Strong */
#case-study .caseBox strong {
	font-size: 1.2em;
	line-height: 1.8em;
	color: #80ac46;
	padding-bottom: 20px;
	display: block;
}

/* Image */
#case-study .caseBox img {
	width: 90%;
	margin: 20px auto 0;
}

/* Image */
#case-study .imgReverse {
	
}

/* Small */
#case-study .caseBox small {
	line-height: 1.6em;
	padding-top: 10px;
	display: block;
}




/* ====================================================
		Creative
==================================================== */
#creative .slide {
	width: 80%;
	margin: 0 auto;
}
#creative #creativeBn,
#creative #creativeLp {
	width: 46%;
}
#creative #creativeBn {
	margin-right: 4%;
}
#creative #creativeLp {
	margin-left: 4%;
}
#creative #creativeSubBox {
	padding-top: 50px;
}
#creative #creativeSubBox section {
	line-height: 2em;
	padding-top: 40px;
}

/* -------------------------------
		Title
------------------------------- */
#creative h3 {
	font-weight: 600;
	padding-bottom: 30px;
}
#creative h4 {
	font-size: 1.2em;
	font-weight: 600;
}

/* -------------------------------
		Image
------------------------------- */
#creative img {
	width: 40%;
	margin: 0 auto;
}

/* -------------------------------
		Text
------------------------------- */
#creative .txt {
	line-height: 2em;
}
#creative small {
	display: block;
	line-height: 1.6em;
	padding-top: 10px;
}




/* ====================================================
		FAQ
==================================================== */
#faq .slide {
	width: 80%;
	margin: 0 auto;
}

/* -------------------------------
		Slide Content
------------------------------- */
/* Content Box */
.slideContent .contentBox {
	border-bottom: #363636 1px solid;
}
.slideContent .contentBox:nth-of-type(1) {
	border-top: solid 1px #f0f0f0;
}
.slideContent .contentBox:nth-last-of-type(1) {
	margin-bottom: 30px;
}

/* Title Slide */
.slideContent .contentBox .tit_slide {
	text-align: left;
	padding: 30px 60px 30px 0;
	margin: 0;
	font-size: 1.2em;
	position: relative;
	line-height: 1.5em;
}
.slideContent .contentBox .tit_slide.active {
}
.slideContent .contentBox .tit_slide:hover {
	cursor: pointer;
}
.slideContent .contentBox .tit_slide:before {
	content: "Q";
	color: #80ac46;
	font-family: Arial, Helvetica, "sans-serif";
	margin-right: 10px;
}

/* Detail */
.slideContent .contentBox .detail {
	display: none;
	clear: both;
	font-size: 1em;
	line-height: 1.8em;
	letter-spacing: 0.1em;
	margin: 0 0 30px 30px;
  position: relative;
}
.slideContent .contentBox .detail:before {
	content: "A";
	position: absolute;
	left: -15px;
	margin-left: -1em;
}

/* Paragraph */
.slideContent .contentBox div.detail p {
  margin: 0;
  padding: 0;
}

/* OL */
.slideContent .contentBox .detail ol {
  margin: 0;
  padding: 10px 0 0;
}


/* Icon Plus */
.iconPlus,
.iconPlus span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.iconPlus {
	position: absolute;
	width: 20px;
	height: 20px;
	/*float: right;*/
	top: 35px;
	right: 15px;
}
.iconPlus span {
	position: absolute;
	top: 8px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #000;
}
.iconPlus span:nth-of-type(1) {
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
}
.iconPlus span:nth-of-type(2) {
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
}
/*＋、－切り替え*/
.iconPlus.active span:nth-of-type(1) {
	display:none;
}
.iconPlus.active span:nth-of-type(2) {
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
}




/* ====================================================
		PRICE
==================================================== */
#price .slide {
	width: 80%;
	margin: 0 auto;
}




/* ====================================================
		CONTACT
==================================================== */
#contact .slide {
	width: 80%;
	margin: 0 auto;
}
#contact dt,
#contact dd {
	padding: 10px 0;
	display: block;
}
#contact dt {
	min-height: 42px;
	font-weight: 500;
	clear: both;
	margin-right: 0;
	padding-top: 20px;
}
#contact dd:last-child {
	padding-bottom: 10px;
}
div.mfp_ok {
	display: none!important;
}

/* -------------------------------
		Icon - Must
------------------------------- */
#contact dt label {
	padding: 10px 5px 0 0;
}

/* -------------------------------
		Hidden
------------------------------- */
#contact dd ul li:first-child {
	display: none;
}

/* -------------------------------
		Must
------------------------------- */
#contact dt .must {
	background: #333;
	color: #fff;
	font-size: 0.6em;
	padding: 3px 4px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	margin-left: 5px;
}

/* -------------------------------
		Input Area
------------------------------- */
input.input_area,
textarea {
	width: 100%;
	font-size: 1em;
	background: #fff;
	border: 1px solid #fff;
	padding: 15px 20px;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	outline: none;
}
textarea {
	resize: vertical;
	width: 100%!important;
	height: 400px;
}
input.input_area:active,
input.input_area:focus,
textarea:active,
textarea:focus {
	border: 1px solid #80ac46;
}
input.input_area:placeholder-shown {
    color: #80ac46;
}

/* Radio */
.radio_button ul {
	padding-left: 0;
}
.radio_button input[type="radio"] {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	 -moz-appearance: none;
		  appearance: none;
}
.radio_button li {
	margin-bottom: 16px;
}
.radio_button li:last-child {
	margin-bottom: 0;
}
.radio_button label {
	font-weight: normal;
	position: relative;
	display: block;
	word-break: break-all;
	cursor: pointer;
}
.radio_button label input[type="radio"] + span {
	position: relative;
	padding: 8px 0 0 45px;
}
.radio_button li label span {
	display: block;
}
.radio_button li label input[type="radio"] {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
.radio_button li label input[type="radio"] + span::before,
.radio_button li label input[type="radio"] + span::after {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	content: '';
	box-sizing: border-box;
}
.radio_button li label input[type="radio"] + span::before {
	z-index: 0;
	background-color: #fff;
	width: 37px;
	height: 37px;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}
.radio_button li label input[type="radio"] + span::after {
  z-index: 1;
  margin: 8px 13px;
  width: 12px;
  height: 17px;
}
.radio_button li label input[type="radio"]:checked + span::before {
	background-color: #363636;
}
.radio_button li label input[type="radio"]:checked + span::after {
  border: 4px solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

/* -------------------------------
		Submit
------------------------------- */
#btnBox {
	clear: both;
	text-align: center;
	padding: 50px 0 100px;
	margin-right: 15px;
}
#btn_submit {
	color: #fff;
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	background: #363636;
	padding: 20px 100px;
	border: none;
}
#btn_submit:hover {
	background: #a7a7a7;
}

/* ====================================================
		Information
==================================================== */
#information {
	padding-bottom: 30px;
}
#information .slide {
	width: 80%;
	margin: 0 auto;
}

/* -------------------------------
		Title
------------------------------- */
#information h2 {
	text-align: left;
	font-size: 1.4em;
	font-weight: 300;
	padding: 0 0 30px;
}

/* -------------------------------
		Dl
------------------------------- */
#information dl dt,
#information dl dd {
	padding: 10px 0;
}
#information dl dt {
	font-weight: 400;
}

/* -------------------------------
		Link
------------------------------- */
#information dl a {
	color: #333;
	text-decoration: underline;
}
#information dl a:hover {
	text-decoration: none;
}


/* ====================================================
		Btn - Company Site
==================================================== */
.btn_nomal {
	clear: both;
	display: block;
	text-align: center;
	padding-top: 100px;
}
.btn_nomal a {
	border: #363636 1px solid;
	padding: 25px 100px;
	margin: 50px auto;
	color: #303030;
}
.btn_nomal a:hover {
	color: #ccc;
}




/* ====================================================
		Banner
==================================================== */
.bnWidthMax,
#creative .bnWidthMax img {
  width: 100%;
  height: auto;
}
.bnWidthMax {
  padding-top: 50px;
}
#price .bnWidthMax {
  padding-top: 0;
}









/* ===========================================================================================================================================

   TABLET - LARGE

============================================================================================================================================= */
@media screen and (min-width: 992px) and (max-width: 1199px) {



	
	
}

/* ===========================================================================================================================================

   TABLET

============================================================================================================================================= */
@media screen and (min-width: 768px) and (max-width: 991px) {

/* ====================================================
		Main
==================================================== */
#main {
	padding: 20px 0 140px;
}
	
/* -------------------------------
		Catch Copy
------------------------------- */
#main h2 {
	width: 60%;
	margin: 60px auto 0;
}
	
/* Text */
#main .txt {
	width: 60%;
}

/* Small */
#main small {
	width: 60%;
	margin-bottom: 30px;
}
	
/* Img - Item Lineup */
#main .img-responsive {
	width: 70%;
}

	
/* ====================================================
		Case Study
==================================================== */
/* -------------------------------
		About - JOSH
------------------------------- */
#aboutJOSH {
	width: 80%;
	padding: 50px 10%;
	margin: 0 auto 100px;
}
	
	
/* Title */
#aboutJOSH h3 {
	padding: 10px 0 20px;
}
	
	
	
}

/* ===========================================================================================================================================

   MOBILE

============================================================================================================================================= */
@media screen and (max-width: 767px) {

/* ====================================================
		Main
==================================================== */
#main {
	padding: 20px 0 100px;
}
	
/* -------------------------------
		Catch Copy
------------------------------- */
#main h2 {
	width: 80%;
	margin: 0 auto;
	padding-bottom: 40px;
}

/* Text */
#main .txt {
	width: 80%;
	line-height: 2em;
}

/* Small */
#main small {
	width: 80%;
	margin-bottom: 20px;
}
	
/* Img - Item Lineup */
#main .img-responsive {
	width: 86%;
}
	
/* ====================================================
		Trouble
==================================================== */
#trouble {

}

/* -------------------------------
		 List
------------------------------- */
#trouble ul li {
	padding: 0 2% 40px;
}
	#trouble ul li:last-child {
		padding-bottom: 0;
	}
#trouble ul li img {
	width: 70%;
}	
	
/* ====================================================
		Feature
==================================================== */
#feature {
	
}
	
/* -------------------------------
		 Layout
------------------------------- */
#feature section {
	padding: 0 2% 50px;
}
	#feature section.no3 {
		padding-bottom: 0;
	}
	
/* Title */
#feature section h3 {
	font-size: 1.2em;
	padding-bottom: 15px;
}
	
/* ====================================================
		Menu
==================================================== */
#menu {
	
}
#menu #menuLineup p {
	line-height: 2em;
}

/* -------------------------------
		 Layout
------------------------------- */
#menu section {
	width: 100%;
	border-top: #e3e3e3 solid 1px;
	border-right: none;
	margin: 0;
	padding: 10%;
}
	
/* Title */
#menu section h3 {
	font-size: 1.2em;
}
	
	
/* ====================================================
		Case Study
==================================================== */
#case-study {
	
}

/* -------------------------------
		About - JOSH
------------------------------- */
#aboutJOSH {
	width: 100%;
	border: #363636 1px solid;
	padding: 20px 10%;
	margin: 0 auto;
}
	
/* Title */
#aboutJOSH h3 {
	text-align: center;
	padding: 10px 0 20px;
}
	#aboutJOSH h3 strong {
		padding-bottom: 15px;
		display: block;
	}
	
/* Image */
#aboutJOSH .grid_4 img {
	width: 50%;
}
	
	#aboutJOSH {
		line-height: 2em;
		letter-spacing: 0.05em;
	}
	
/* -------------------------------
		Case Box
------------------------------- */
#case-study .caseBox {
	border-bottom: #e3e3e3 solid 1px;
	padding-top: 80px;
}
#case-study .caseBox.lastBox {
	border-bottom: none;
	padding-bottom: 0;
}
	
/* Title */
#case-study .caseBox h4 {
	font-size: 1.4em;
}
	
/* Strong */
#case-study .caseBox strong {
	letter-spacing: 0;
}
	
/* Image */
#case-study .caseBox img {
	width: 100%;
}
	
	
	
/* ====================================================
		Creative
==================================================== */
#creative #creativeSubBox {
	padding-top: 10px;
}
#creative #creativeBn,
#creative #creativeLp {
	width: 100%;
}
#creative #creativeBn {
	margin: 0;
}
#creative #creativeLp {
	margin: 0;
	padding-top: 30px;
}

/* -------------------------------
		Title
------------------------------- */
#creative h3 {
	font-size: 1.2em;
	font-weight: 800;
	padding-bottom: 20px;
}
#creative h4 {
	font-size: 1.2em;
	font-weight: 800;
	text-align: center;
	padding-bottom: 20px;
}

/* -------------------------------
		Image
------------------------------- */
#creative img {
	width: 70%;
}

/* -------------------------------
		Text
------------------------------- */
#creative .txt {
	line-height: 2em;
}
#creative small {
	display: block;
	line-height: 1.6em;
	padding-top: 10px;
}
	
	
/* ====================================================
		FAQ
==================================================== */
/* -------------------------------
		Slide Content
------------------------------- */
/* Title Slide */
.slideContent .contentBox .tit_slide {
	font-size: 1em;
}
	
	
/* ====================================================
		Contact
==================================================== */
	
#contact dt,
#contact dd {
	width: 100%;
	display: block;
	padding: 0!important;
	margin: 0!important;
}
#contact dt {
	min-height: 42px;
	font-weight: 700;
	font-size: 1em;
	clear: both;
	margin-right: 0;
	padding-top: 20px;
}
	#contact dd {
		padding-bottom: 20px!important;
	}
	
/* -------------------------------
		iOS Reset
------------------------------- */
input,
textarea,
input[type="submit"]{
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus {
	outline-offset: -2px;
}
	
/* -------------------------------
		Submit
------------------------------- */
#btnBox {
	clear: both;
	text-align: center;
	padding: 50px 0 20px;
	margin: 0;
}
#btn_submit {
	width: 100%;
	color: #fff;
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	background: #363636;
	padding: 20px 0;
	border: none;
}
	
	
/* ====================================================
		Information
==================================================== */

/* -------------------------------
		Dl
------------------------------- */
#information dl dt,
#information dl dd {
	padding: 20px 0;
}
#information dl dt {
	font-weight: 600;
	padding-bottom: 0;
}
#information dl dd {
	line-height: 2em;
}
	
	
/* ====================================================
		Btn - Company Site
==================================================== */
.btn_nomal {
	width: 80%;
	clear: both;
	display: block;
	text-align: center;
	padding-top: 50px;
	margin: 0 auto;
}
.btn_nomal a {
	border: #363636 1px solid;
	padding: 25px 0;
	margin: 50px auto 120px;
	display: block;
}
.btn_nomal a:hover {
	color: #ccc;
}
	

}