@charset "UTF-8";
/* CSS Document */

html{
	font-size: 100%;
}
body{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-feature-settings : "palt" 1;
	line-height: 1.8;
	margin: 0;
	padding: 0;
}
a,
a:link{
	text-decoration: underline;
}
a:hover{
	text-decoration: none;
}
ol,li{
	list-style: none;
	padding: .5rem 0;
}
ul{
	padding: 0;
	margin-bottom: 0;
}
img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
table{
	width: 100%;
	margin-bottom: 2rem;
}
thead th,
thead td{
	font-weight: 700;
}
tbody{
	border-top: #000 1px solid;
}
tbody th{
	font-weight: 400;
}
th,
td{
	display: block;
	border-bottom: #000 1px solid;
	vertical-align: top;
	padding: 1rem;
}

@media (min-width: 768px) {
	
	table{
		margin-bottom: 40px;
	}
	th,
	td{
		display: table-cell;
	}
}

/*-------------------------------------
  common
-------------------------------------*/

.marker {
    background: linear-gradient(transparent 40%, #ff6 40%);
}
.mincho{
	font-size: 1.5rem;
	font-family: "Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
    font-weight: 700;
    line-height: 1.4;
}
.sns {
    margin: 1em auto 2em;
}

@media (min-width: 768px) {
	
	.box{
        opacity: 0;
        position: relative;
        top: 4rem;
        transition: all 1s;
    }
    .box.view {
        opacity: 1;
        top: 0;
        transition: all 1s;
    }
}

/*-------------------------------------
  footer
-------------------------------------*/
footer .copy {
    font-size: .75rem;
    padding-top: 15px;
    margin-bottom: 30px;
    text-align: center;
}

/*-------------------------------------
  h1 h2 h3 h4 h5
-------------------------------------*/

h2{
	margin-top: 2rem;
	margin-bottom: 2rem;
	text-align: center;
}
h3{
	margin-top: 1.5rem;
	margin-bottom: 1rem;
	text-align: center;
}

@media (min-width: 768px) {
	
	h2{
		margin-top: 80px;
		margin-bottom: 40px;
	}
	h3{
		margin-top: 40px;
		margin-bottom: 20px;
	}
}

/* #mail_form */
#mail_form .notes{
    color : #df0300;
}
#mail_form dl dd span.error_blank,
#mail_form dl dd span.error_format,
#mail_form dl dd span.error_match{
	display : block;
	color : #df0300;
	margin-top : 3px;
}
#mail_form input[type="text"],
#mail_form input[type="email"],
#mail_form input[type="button"],
#mail_form select,
#mail_form textarea{
	-webkit-appearance : none;
}
#mail_form input[type=checkbox] {
    width: 30px;
    height: 30px;
    vertical-align: middle;
	border: #ccc 1px solid;
	margin-right: .5rem;
}

/*-------------------------------------
  kindle-lp
-------------------------------------*/
.kindle-lp main{
	background-attachment: fixed;
	overflow: hidden;
	font-family: "小塚ゴシック Pro", "Kozuka Gothic Pro", "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	padding: 0;
}
.kindle-lp .main-inner{
	background-image: url("../images/kindle-lp-main-bg.jpg");
	background-position: top center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
	overflow: hidden;
	padding-bottom: 50px;
}
.kindle-lp .main-inner > div{
	width: 100%;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
	background: #fff;
	box-shadow: 0 0 8px 8px rgba(0, 0, 0, .2);
}
.kindle-lp h1{
	background: none;
	padding: 0;
	margin: 0;
}
.kindle-lp .dtl{
	background-image: url("../images/kindle-lp-dtl-bg.png");
	background-repeat: repeat-y;
	background-size: 100% auto;
}
.ggmap iframe{
	display: block;
	width: 88%;
	max-width: 640px;
	height: calc(100vw * .75);
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 768px) {
	.ggmap iframe{
		height: 500px;
	}
}

.kindle-lp .contact{
	background: #dae8f8;
}
.kindle-lp .contact h2{
	color: #004498;
	font-size: 36px;
	font-weight: 700;
	font-style: italic;
}

@media (min-width: 768px) {
	.kindle-lp .contact h2{
		font-size: 50px;
	}
}

.kindle-lp .contact dl dt span.optional,
.kindle-lp .contact dl dt span.required{
	background: #009de3;
}
.kindle-lp .contact dt{
	font-weight: 700;
}
.kindle-lp .contact input[type="email"],
.kindle-lp .contact input[type="text"],
.kindle-lp .contact textarea{
	background: #fff;
}
.kindle-lp .contact input[type="button"]{
	background: #004498;
	color: #fdffa6;
	border: none;
}
.kindle-lp .contact input[type="button"]:hover{
	cursor: pointer;
	background: #009de3;
	color: #fdffa6;
}
.kindle-lp footer{
	background: #024579;
	padding: 0;
}
.kindle-lp footer .copy{
	margin-bottom: 20px;
}

/*-------------------------------------
  amazon-campaign-lp
-------------------------------------*/
/* #mail_form */

.amazon-campaign-lp .form-wrapper{
	background: #fff;
	overflow: hidden;
	padding: 1rem 20px 2rem;
}
.amazon-campaign-lp .form-wrapper h2{
    width: 208px;
    margin: 2rem auto;
}
.amazon-campaign-lp #mail_form dl dt{
    font-size: 1.5rem;
    font-weight: 700;
}
.amazon-campaign-lp #mail_form dl dt span.required,
.amazon-campaign-lp #mail_form dl dt span.optional{
    display: inline-block;
    font-size: .8rem;
    line-height: 1rem;
    padding: .25rem 1rem;
    margin-right: 1rem;
    border-radius: 20px;
    color: #fff;
}
.amazon-campaign-lp #mail_form dl dt span.required{
	background: #ff474e;
}
.amazon-campaign-lp #mail_form dl dt span.optional{
	background: #504b4e;
}
.amazon-campaign-lp #mail_form dl dd span{
    display: block;
    font-weight: 700;
    margin-bottom: 1rem;
}
.amazon-campaign-lp #mail_form input[type="text"],
.amazon-campaign-lp #mail_form input[type="email"],
.amazon-campaign-lp #mail_form textarea{
	padding : .5rem 2%;
	font-size : 100%;
	font-family : inherit;
	transition: all .3s;
	border: #ccc 2px solid;
}
.amazon-campaign-lp #mail_form textarea{
	display : block;
	resize : vertical;
}
.amazon-campaign-lp #mail_form input#name_1,
.amazon-campaign-lp #mail_form input#name_2{
	width : 49%;
}
.amazon-campaign-lp #mail_form input#mail_address,
.amazon-campaign-lp #mail_form textarea{
	width : 100%;
}
.amazon-campaign-lp #mail_form #form_submit{
    margin: 2rem 0;
}
.amazon-campaign-lp #mail_form input[type="button"]{
	width: 100%;
	height: 100px;
	background: url("../images/amazon-campaign-lp-form-btn.svg") no-repeat;
	background-size: 100% auto;
	border: none;
	text-indent: -9999px;
	position: relative;
	top: 0;
	transition: all .3s;
}
.amazon-campaign-lp #mail_form input[type="button"]:hover{
	cursor: pointer;
	position: relative;
	top: 2px;
}

@media (min-width: 480px) {
	
	.amazon-campaign-lp #mail_form input[type="button"]{
		height: 200px;
	}
}

@media (min-width: 768px) {
    
    .amazon-campaign-lp #mail_form dl dt span{
		font-weight: 400;
    }
    .amazon-campaign-lp #mail_form #form_submit{
		margin: 40px 0 80px;
    }
}

@media (min-width: 960px) {
	
	.amazon-campaign-lp .form-wrapper{
		max-width: 1000px;
		padding-left: 40px;
		padding-right: 40px;
		border: #ccc 1px solid;
		margin: 0 auto;
	}
    .amazon-campaign-lp .form-wrapper h2{
		width: 266px;
		margin: 40px auto 80px;
	}
    .amazon-campaign-lp #mail_form dl{
        max-width: 840px;
        margin: 0 auto;
    }
	.amazon-campaign-lp #mail_form input[type="button"]{
		height: 220px;
	}
}

.amazon-campaign-lp-inner{
    /*background: #ff474e;*/
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 1rem;
}
.amazon-campaign-lp h2{
    margin-top: 0;
    margin-bottom: 0;
}
.amazon-campaign-lp .text-box{
    background: #fff;
    color: #504b4e;
    margin: 1rem 1rem 1.5rem;
    padding: 1rem;
    font-size: 1.2rem;
    line-height: 1.8;
}
.amazon-campaign-lp-01 h2{
    max-width: 238px;
    width: 100%;
    margin: 0 auto 1rem;
}
.amazon-campaign-lp-01 > div{
    background: #ffdadc;
    margin: 1rem 0;
	overflow: hidden;
}
.amazon-campaign-lp-01-btn{
    padding: 0 1rem 2rem;
}
.amazon-campaign-lp-04,
.amazon-campaign-lp-06{
    background: #3ec8b3;
    overflow: hidden;
}
.amazon-campaign-lp-04 .text-img,
.amazon-campaign-lp-05 .text-img{
    margin: 1rem;
}
.amazon-campaign-lp-04 strong{
    font-size: 1.8rem;
}
.amazon-campaign-lp-04 .name{
    width: 122px;
}
.amazon-campaign-lp-05 .text-box{
    margin-top: 50px;
}
.amazon-campaign-lp-05 .text-box h3{
    max-width: 376px;
    margin: 0 auto;
    position: relative;
    top: -50px;
}
.amazon-campaign-lp-05 .notes{
    color: #fff;
    margin: 0 1rem 1rem;
}
/* book-lp */
.book-lp.amazon-campaign-lp-06{
    background: none;
}
/* 2022 */
.amazon-cam2022-lp-03 .photo,
.amazon-campaign-lp-06 .photo{
    max-width: 200px;
    margin: 0 auto;
}
.amazon-cam2022-lp-03 .name-title,
.amazon-campaign-lp-06 .name-title{
    padding-top: 2rem;
}
.amazon-cam2022-lp-03 .text-box,
.amazon-campaign-lp-06 .text-box{
	font-size: 1rem;
}
.amazon-campaign-lp-07 .text-box{
    text-align: center;
    margin: 0 1rem;
}
.amazon-campaign-lp-07 .text-box.flow{
    background: #fff url("../images/amazon-campaign-lp-07-line.png") no-repeat top;
    background-size: auto 60px;
    padding-top: 60px;
    margin: 0 1rem;
}
.amazon-campaign-lp-07 .step{
    max-width: 112px;
    margin: 0 auto;
}
.amazon-campaign-lp-07 strong{
    font-size: 1.5rem;
}

@media (min-width: 768px) {
    
    .amazon-campaign-lp-inner{
        padding-bottom: 40px;
    }
    .amazon-campaign-lp h2{
        margin-top: 0;
        margin-bottom: 0;
    }	
    .amazon-campaign-lp .text-box{
        max-width: 920px;
        width: 90%;
        margin: 40px auto 40px;
        padding: 40px;
    }
	.amazon-campaign-lp-01 h2{
        margin: 0 auto 40px;
    }
	.amazon-campaign-lp-01 > div{
        margin: 40px 40px 0;
    }
    .amazon-campaign-lp-01-btn{
        padding: 0 40px 40px;
    }
    .amazon-campaign-lp-04 .text-box,
    .amazon-campaign-lp-04 .text-img{
        max-width: 840px;
        width: 90%;
        margin: 0 auto 40px;
    }
    .amazon-campaign-lp-04 strong{
        font-size: 2.4rem;
        line-height: 2;
    }
    .amazon-campaign-lp-05 .text-box h3{
        max-width: 528px;
    }
    .amazon-campaign-lp-05 .text-box .photo{
        max-width: 400px;
        margin: 0 auto;
    }
    .amazon-campaign-lp-05 .text-img{
        max-width: 920px;
        width: 90%;
        margin: 0 auto 20px;
    }
    .amazon-campaign-lp-05 .notes{
        text-align: center;
    }
	/* 2022 */
	.amazon-cam2022-lp-03 .photo,
    .amazon-campaign-lp-06 .photo{
        max-width: 300px;
        margin: 0 40px 40px 0;
    }
	.amazon-cam2022-lp-03 .name-title,
    .amazon-campaign-lp-06 .name-title{
        max-width: 390px;
    }
	.amazon-cam2022-lp-03 .text-box,
	.amazon-campaign-lp-06 .text-box{
        margin-bottom: 0;
		font-size: 1.2rem;
    }
    .amazon-campaign-lp-07 .text-box{
        text-align: left;
        margin: 0 auto;
    }
    .amazon-campaign-lp-07 .text-box.flow{
        background-size: auto 100px;
        padding-top: 100px;
        margin: 0 auto;
    }
    .amazon-campaign-lp-07 .step{
        max-width: 150px;
        margin: 0 40px 0 0;
    }
}

@media (min-width: 1366px) {
	
	/* 2022 */
    body.amazon-campaign-lp{
        background: url("../images/amazon-cam2022-lp-body.png") no-repeat top center;
        background-attachment: fixed;
    }
	
    /*body.amazon-campaign-lp{
        background: url("../images/amazon-campaign-lp-body.png") repeat-x top;
        background-attachment: fixed;
    }*/
}

/* 2022 */
.amazon-campaign-lp-kv h1{
	margin-bottom: 0;
}
.amazon-cam2022-lp-cta{
	background: #ff474e;
	overflow: hidden;
}
.amazon-cam2022-lp-03,
.amazon-cam2022-lp-05,
.amazon-cam2022-lp-06{
	background: #ff474e;
	overflow: hidden;
	padding-bottom: 40px;
}
.amazon-cam2022-lp-05 .text-box{
	background: #f2f2f2;
	margin: 0 auto;
	padding: 0;
}
.amazon-cam2022-lp-05 p{
	margin: 0 40px;
}
.amazon-cam2022-lp-06 h2{
	width: 100%;
	max-width: 384px;
	margin: 0 auto;
}

@media (min-width: 768px) {
	
	.amazon-cam2022-lp-cta{
		background: none;
		background: url("../images/amazon-cam2022-lp-btn-bg.png") no-repeat top center;
		overflow: hidden;
	}
}

/*-------------------------------------
  second-opinion
-------------------------------------*/
/* #mail_form */

.second-opinion .form-wrapper{
	background: #fff;
	overflow: hidden;
	padding: 1rem 20px 2rem;
}
.second-opinion #mail_form h2{
	text-align: center;
	max-width: 228px;
	width: 100%;
	margin: 1rem auto;
}
.second-opinion #mail_form dl{
	border-top: #ccc 1px solid;
	border-left: #ccc 1px solid;
	border-right: #ccc 1px solid;
}
.second-opinion #mail_form dl dt{
	padding: 1rem;
}
.second-opinion #mail_form dl dd{
	border-bottom: #ccc 1px solid;
	padding: 0 1rem 1rem;
	margin-bottom: 0;
}
.second-opinion #mail_form input[type="text"],
.second-opinion #mail_form input[type="email"],
.second-opinion #mail_form textarea{
	padding : .5rem 2%;
	-webkit-appearance : none;
	font-size : 100%;
	font-family : inherit;
	transition: all .3s;
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: #fff 2px solid;
}
.second-opinion #mail_form textarea{
	display : block;
	resize : vertical;
}
.second-opinion #mail_form input[type="text"]:focus,
.second-opinion #mail_form input[type="email"]:focus,
.second-opinion #mail_form textarea:focus{
	border-bottom: #1c907d 2px solid;
}
.second-opinion #mail_form input#name_1,
.second-opinion #mail_form input#name_2{
	width : 49%;
}
.second-opinion #mail_form select,
.second-opinion #mail_form input#mail_address,
.second-opinion #mail_form textarea{
	width : 100%;
}
.second-opinion #mail_form p#form_submit{
	width: 100%;
}
.second-opinion #mail_form input[type="button"]{
	width: 100%;
	color : #fff;
	vertical-align : middle;
	line-height : 2;
	background : #1c907d;
	border : none;
	font-weight: 700;
	padding : 1rem;
	font-family : inherit;
	-webkit-appearance : none;
	box-shadow: 0 2px 10px 0 rgba(0, 0, 0, .35);
	transition: all .3s;
}
.second-opinion #mail_form input[type="button"]:hover{
	cursor: pointer;
	box-shadow: none;
}

/* -- for JavaScript ここから --- */

.second-opinion #mail_form dl dt span.required,
.second-opinion #mail_form dl dt span.optional{
	display: inline-block;
	line-height: 1rem;
	padding: .25rem;
	margin-right: 1rem;
	background: #f3183b;
	border-radius: 3px;
	color: #fff;
}

/* -- for JavaScript ここまで --*/

@media (min-width: 960px) {
	
	.second-opinion .form-wrapper{
		max-width: 1000px;
		padding-left: 40px;
		padding-right: 40px;
		margin: 0 auto;
	}
}

@media (min-width: 1024px) {
	
	.second-opinion{
		position: relative;
	}
	.second-opinion .second-opinion-kv > .container{
		width: 90%;
		margin-left: 0;
		padding-left: 0;
	}
	.second-opinion .form-wrapper{
		max-width: 480px;
		width: 25%;
		padding-left: 20px;
		padding-right: 20px;
		position: absolute;
		top: 0;
		right: 0;
	}
	.second-opinion #mail_form input[type="button"]{
		font-size: .9vw;
	}
}

@media (min-width: 1280px) {
	
	.second-opinion .second-opinion-kv > .container{
		width: 100%;
		padding-left: 40px;
	}
	.second-opinion .form-wrapper{
		padding-left: 40px;
		padding-right: 40px;
	}
	.second-opinion #mail_form h2{
		margin: 40px auto;
	}
	.second-opinion #mail_form dl dt{
		font-size: 1.1rem;
	}
}

@media (min-width: 1366px) {
	
	.second-opinion .second-opinion-kv > .container{
		margin-left: auto;
	}
}

/* contact 遷移型フォーム */
main .contact{
	background: #fff;
	color: #000;
}
main .contact dl dt span.optional,
main .contact dl dt span.required{
	background: #df0300;
    color: #fff;
	font-size: .9rem;
}
main .contact input[type="email"],
main .contact input[type="text"],
main .contact textarea {
	background: #eee;
	border: 2px solid #fff;
}
main .contact input[type="button"] {
    background: #df0300;
    color: #fff;
	border: 2px solid #df0300;
}
main .contact input[type="button"]:hover {
    cursor: pointer;
    background: #fff;
    color: #df0300;
}

/* contents */
.second-opinion main > div{
	width: 100%;
}
.second-opinion main > div > img{
    margin: 1rem 0;
}
.second-opinion .container{
	padding-left: 20px;
	padding-right: 20px;
}
.second-opinion-06{
	margin-top: 2rem; 
}
.second-opinion-06 > div:first-child{
    background: url("../images/second-opinion-06-bg.png") no-repeat 70% 0;
    background-size: cover;
    overflow: hidden;
}
.second-opinion-06 > div:last-child{
    background: #390000;
    overflow: hidden;
	padding-bottom: 2rem;
}
.second-opinion-06 h2{
    width: 100%;
    max-width: 226px;
}
.second-opinion-06 p{
    color: #fff;
}
.second-opinion-07 h2{
    width: 100%;
    max-width: 472px;
	margin: 2rem auto;
}
.second-opinion-07 video{
	width: 100%;
	margin-bottom: 2rem;
}
.second-opinion-08{
    color: #231d92;
}
.second-opinion-08 .notes{
    background: #231d92;
	overflow: hidden;
    margin: 1.5rem 0;
    color: #fff;
	padding: 1rem 1rem 0;
}
.second-opinion-09{
    margin-top: 3.5rem;
}
.second-opinion-09 .box{
	background: #df0300;
	overflow: hidden;
	color: #fff;
	padding: 1.5rem 1rem 1rem;
    margin: 1rem 0 1.5rem;
	font-weight: 700;
}
.second-opinion-09 .box img{
	display: block;
	max-width: 90px;
	width: 30%;
	margin: 0 auto;
}
.second-opinion-10 > div{
	background: #1c907d;
	overflow: hidden;
	color: #fff;
	padding: 1.5rem 1rem 1rem;
	margin-bottom: 2rem;
}
.second-opinion-10 h2{
    width: 100%;
    max-width: 170px;
	margin-left: auto;
	margin-right: auto;
}
.second-opinion-10 li{
	font-weight: 700;
	line-height: 1rem;
	padding: 0;
}
.second-opinion-10 li span{
	font-size: .9rem;
	font-weight: 400;
}
.second-opinion-13 .col-6{
	margin: 0 auto 1.5rem;
}
.second-opinion-13 ul{
	margin: 1rem 0 2rem;
}
.second-opinion-13 ul li{
	line-height: 1.4;
}
.second-opinion-13 .name{
    width: 150px;
}
.second-opinion-bf{
	margin-top: 2rem;
}

@media (min-width: 480px) {
    
    .second-opinion .container{
		max-width: 100%;
    }
}

@media (min-width: 768px) {
    
    .second-opinion .container > div > img{
        margin: 25px 0;
    }
	.second-opinion-bf .container > div > img{
		margin: 0;
	}
	.second-opinion-06{
        margin: 25px 0;
	}
	.second-opinion-06 h2{
		max-width: 338px;
	}
	.second-opinion-06 > div{
		padding-left: 40px;
		padding-right: 40px;
	}
	.second-opinion-07 h2{
		margin-top: 40px;
		margin-bottom: 40px;
		max-width: 850px;
	}
	.second-opinion-07 video{
		display: block;
		max-width: 600px;
		margin: 25px auto 50px;
	}
	.second-opinion-08 h3{
		max-width: 492px;
		margin: 0 auto 40px;
	}
	.second-opinion-08 .notes{
		text-align: center;
		padding: 20px 20px 0;
	}
	.second-opinion-09 .box{
		font-size: 1.2rem;
		text-align: center;
	}
	.second-opinion-10 h2{
		max-width: 306px;
	}
	.second-opinion-10 > div{
		padding: 40px 40px 10px;
	}
	.second-opinion-10 li{
		height: 3.5rem;
	}
	.second-opinion-10 li:nth-child(odd){
		width: 45%;
		float: left;
	}
	.second-opinion-10 li:nth-child(even){
		width: 45%;
		float: right;
	}
	.second-opinion-13{
		font-size: 1.15rem;
		margin-top: 20px;
		margin-bottom: 40px;
	}
	.second-opinion-13 h2{
		width: 100%;
		max-width: 646px;
		margin-left: auto;
		margin-right: auto;
	}
	.second-opinion-13 ul{
		padding-left: 2rem;
		padding-right: 2rem;
	}
}

@media (min-width: 1024px) {
	
	.second-opinion a{
		position: relative;
		top: 0;
		transition: all .3s;
	}
	.second-opinion a:hover{
		top: 1rem;
	}
	.second-opinion .container{
		max-width: 1000px;
		padding-left: 40px;
		padding-right: 40px;
    }
	.second-opinion-kv{
        background: #fff url("../images/second-opinion-kv-bg.png") repeat-x top;
		overflow: hidden;
		padding-right: 80px;
    }
	.second-opinion main > div.second-opinion-06{
		max-width: 1000px;
		padding-left: 40px;
		padding-right: 40px;
		margin: 25px auto;
	}
	.second-opinion-07 video{
		margin: 25px auto 100px;
	}
	.second-opinion-08{
		position: relative;
		border: #231d92 1px solid;
		margin: 80px 0 40px;
		padding: 0 40px;
	}
	.second-opinion-08 > div{
		position: relative;
		top: -40px;
	}
	.second-opinion-08 > div h2{
		margin-top: 0;
		margin-bottom: 20px;
	}
	.second-opinion-13{
		border: #000 1px solid;
	}
	.second-opinion-13 > div{
		margin: 80px 0 40px;
		padding: 0 40px;
	}
	.second-opinion-bf{
        background: #fff url("../images/second-opinion-bf-bg.png") repeat-x bottom;
		overflow: hidden;
    }
}

/*-------------------------------------
  green-hammock
-------------------------------------*/

.green-hammock-cartbox01,
.green-hammock-cartbox02-inner{
	position: relative;
}
.green-hammock-btn{
	max-width: 100%;
	position: absolute;
	bottom: 4vh;
}
.green-hammock-cartbox01 .green-hammock-btn img{
	display: block;
	width: 90%;
	margin: 0 auto;
}
.green-hammock-cartbox02 .green-hammock-btn img{
	display: block;
	width: 75%;
	margin: 0 auto;
}
.green-hammock-faq h2{
	max-width: 308px;
	margin-left: auto;
	margin-right: auto;
}
.green-hammock-cartbox02{
	background: url("../images/green-hammock-cartbox02-bg.png") no-repeat top center;
	background-size: cover;
	background-attachment: fixed;
	overflow: hidden;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
}
.green-hammock-details{
	margin-bottom: 2rem;
}
.green-hammock-login{
	margin: 1rem auto;
}

@media (min-width: 768px) {
	
	.green-hammock-kv .container,
	.green-hammock-voice01 .container,
	.green-hammock-voice02 .container{
		max-width: 100%;
		padding-right: 0;
		padding-left: 0;
	}
	.green-hammock-cartbox01{
		background: url("../images/green-hammock-cartbox01-bg.png") repeat-x bottom;
	}
	.green-hammock-btn img{
		position: relative;
		top: 0;
		transition: all .3s;
	}
	.green-hammock-btn:hover img{
		top: 10px;
	}
	.green-hammock-btn{
		width: 40%;
		margin-left: 50%;
		max-width: 460px;
	}
	.green-hammock-cartbox01 .green-hammock-btn img,
	.green-hammock-cartbox02 .green-hammock-btn img{
		width: 100%;
	}
	.green-hammock-details{
		background: url("../images/green-hammock-details-bg.png") repeat;
		overflow: hidden;
		padding-bottom: 100px;
		margin-top: 50px;
		margin-bottom: 0;
	}
	.green-hammock-details h2{
		background: url("../images/green-hammock-details-ttl-bg.png") no-repeat top center;
		margin: 0;
	}
	.green-hammock-details h2 img{
		display: block;
		max-width: 1000px;
		margin: 0 auto;
	}
	.green-hammock-voice02{
		background: url("../images/green-hammock-voice02-bg.png") repeat-x bottom;
		position: relative;
		top: -80px;
	}
	.green-hammock-faq{
		position: relative;
		top: -80px;
	}
    .green-hammock-faq h2{
        max-width: 244px;
    }
	.green-hammock-cartbox02{
		background-size: inherit;
		background-attachment: inherit;
		padding-bottom: 50px;
		margin-bottom: 50px;
	}
	.green-hammock-cartbox02 h2{
		margin: 0;
	}
	.green-hammock-cartbox02 h2 img{
		display: block;
		max-width: 1000px;
		margin: 0 auto;
	}
	.green-hammock-login{
		margin: 50px auto;
	}
}

@media (min-width: 1024px) {
	
	.green-hammock-kv .container,
	.green-hammock-voice01 .container,
	.green-hammock-voice02 .container,
	.green-hammock-cartbox01 .container
	.green-hammock-cartbox02 .container{
		max-width: 1000px;
		padding: 0;
	}
	.green-hammock-kv{
		background: url("../images/green-hammock-kv-bg.png") no-repeat top center;
	}
	.green-hammock-btn{
		bottom: 50px;
	}
	.green-hammock-voice01{
		background: url("../images/green-hammock-voice01-bg.png") no-repeat bottom center;
	}
}

/*-------------------------------------
  law-office
-------------------------------------*/

.law-office header{
    padding-top: 10px;
    padding-bottom: 10px;
}
.law-office header .contact-btn{
    position: relative;
    top: -30px;
}
.law-office h1{
    margin-bottom: 0;
}
.law-office-issue04{
    background: url("../images/law-office-issue04-bg.png") no-repeat top center;
    background-size: cover;
}
.law-office h2{
    margin-top: 0;
    margin-bottom: 0;
}
.law-office .law-office-service{
    background: url("../images/law-office-bg.png") repeat;
    overflow: hidden;
    font-size: 1.2rem;
}
.law-office .law-office-service .portrait{
    max-width: 230px;
    margin: 1.5rem auto;
}
.law-office .law-office-service .mincho{
    color: #ad2214;
    font-size: 1.75rem;
}
.law-office .law-office-service .name{
    text-align: right;
    margin-bottom: 2rem;
}
.law-office-cta01 .cta-box{
    border: #233357 10px solid;
    border-radius: 40px;
    margin: 2rem auto;
}
.law-office-cta01 a,
.law-office-cta02 a{
    display: block;
    margin: 2rem 0;
}
.law-office-voice{
    background: url("../images/law-office-bg.png") repeat;
}
.law-office-reason dt{
    max-width: 232px;
    margin: 0 auto;
}
.law-office-reason dd{
    font-weight: 700;
}
.law-office-faq{
    background: #233357;
    overflow: hidden;
	font-weight: 700;
}
.law-office-faq h2{
    max-width: 188px;
    margin: 1.5rem auto;
}
.law-office-faq p{
    background: #fff;
}
.law-office-faq p.q,
.law-office-faq p.a{
    padding-top: 20px;
    padding-left: 70px;
    padding-right: 10px;
    padding-bottom: 20px;
    min-height: 80px;
}
.law-office-faq p.q{
    background: #fff url("../images/law-office-faq-q.svg") no-repeat;
    background-position: 10px 20px;
    background-size: 50px auto;
    margin-bottom: 0;
}
.law-office-faq p.a{
    background: #fff url("../images/law-office-faq-a.svg") no-repeat 10px 20px;
    background-position: 10px 20px;
    background-size: 50px auto;
}
.law-office-cta02{
    text-align: center;
}
.law-office-cta02 a{
    text-decoration: none;
    font-weight: 700;
    color: #233357;
}
.law-office-cta02 a .icon-arrow{
    width: 20px;
    height: auto;
    margin-right: 10px;
    margin-bottom: 4px;
}
.law-office-cta02 .row{
    border-bottom: #233357 5px solid;
}
.law-office-cta02 h2{
    max-width: 178px;
    margin: 1.5rem auto;
}
.law-office-cta02 dt{
    border-bottom: #233357 1px solid;
}

@media (min-width: 480px) {
    
    .law-office header .container{
        max-width: 100%;
    }
}

@media (min-width: 768px) {
	
	.law-office header {
		border-bottom: #ccc 5px solid;
	}
    .law-office header .contact-btn{
        position: static;
    }
    .law-office-kv{
        background: url("../images/law-office-kv-bg.png") no-repeat top center;
        background-size: auto 100%;
    }
    .law-office-issue01{
        background: url("../images/law-office-issue01-bg.png") repeat-x;
        background-size: auto 100%;
    }
    .law-office-issue02{
        background: url("../images/law-office-issue02-bg.png") no-repeat top center;
        background-size: 100% 100%;
    }
    .law-office-method h2{
        background: url("../images/law-office-method-ttl-bg.png") repeat-x;
        background-size: auto 100%;
    }
    .law-office-service h2{
        background: #233357;
    }
    .law-office-service > .container{
        padding: 0;
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .law-office-service .portrait-box{
        background: url("../images/law-office-service01-md.png") no-repeat -200px 0;
        background-size: cover;
        padding: 40px 40px;
    }
    .law-office-service .portrait-box p{
        font-size: 1.1rem;
        width: 52%;
    }
    .law-office-service .portrait-box p.name{
        text-align: left;
        margin-bottom: 0;
    }
    .law-office .contact-btn img{
		position: relative;
		top: 0;
		transition: all .3s;
	}
    .law-office .contact-btn:hover img{
		top: 4px;
	}
    .law-office-cta01{
        position: relative;
    }
    .law-office-cta01 .contact-btn{
        position: absolute;
        bottom: 2.5vh;
    }
    .law-office-cta01 .contact-btn img{
        max-width: 400px;
    }
    .law-office-reason h2 img{
        max-width: 680px;
        margin: 0 auto;
    }
    .law-office-reason dt{
        float: left;
        width: 30%;
        padding: 10px 0;
    }
    .law-office-reason dd{
        float: right;
        width: 68%;
        padding: 20px 0 10px;
        min-height: 130px;
    }
    .law-office-faq{
        clear: both;
        padding-bottom: 40px;
    }
    .law-office-faq p.q{
        height: 90px;
    }
    .law-office-faq p.a{
        height: 120px;
    }
    .law-office-cta02 .row:last-child{
        border-bottom: none;
    }
    .law-office-cta02 .cta-box{
        border: #233357 10px solid;
        padding: 40px;
        border-radius: 40px;
        margin: 2rem auto;
    }
    .law-office-cta02 dl{
        margin-bottom: 0;
        font-size: 1.1rem;
    }
    .law-office-cta02 dt{
        float: left;
        width: 30%;
        border-bottom: none;
        text-align: left;
    }
    .law-office-cta02 dd{
        float: right;
        width: 68%;
        text-align: left;
        font-weight: 700;
    }
    .law-office-cta02 .cta-box .container{
		margin-top: 20px;
    }
	.law-office-map{
		text-align: right;
	}
}

@media (min-width: 960px) {
	
	.law-office-service .portrait-box{
		background: url("../images/law-office-service01-md.png") no-repeat top center;
	}
	.law-office-cta01 .contact-btn img{
		max-width: 90%;
	}
    .law-office-reason{
        background: url("../images/law-office-reason-bg.png") no-repeat bottom center;
        overflow: hidden;
    }
    .law-office-reason h2{
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .law-office-reason dl{
        width: 52%;
        margin-left: 48%;
    }
    .law-office-reason dt,
    .law-office-reason dd{
        float: none;
        width: 100%;
    }
    .law-office-reason dd{
        font-size: 1.1rem; 
		padding-left: 40px; 
    }
    .law-office-faq p{
        font-size: 1.1rem;
    }
    .law-office-faq p.q,
    .law-office-faq p.a{
        background-position: 40px 40px;
        padding-top: 40px;
        padding-right: 40px;
        padding-left: 110px;
    }
    .law-office-faq p.a{
        height: 160px;
    }
	.law-office-cta02 .cta-box .container{
		margin-top: 40px;
    }
}

@media (min-width: 1024px) {
	
	.law-office header .container{
		max-width: 1300px;
		line-height: 50px;
	}
	.law-office header .h-logo img,
	.law-office header .h-tel img{
		max-width: 265px;
    }
	.law-office header .contact-btn img{
		max-width: 210px;
	}
	.law-office header .h-tel,
	.law-office header .contact-btn{
		text-align: right;
	}
	.law-office h1.container{
		max-width: 1300px;
	}
}
