@charset "UTF-8";

/* =================================================================
	feature
================================================================= */

/* function_section01 */
@media print, screen and (min-width: 769px){
	#container #function_section01 .function_section_title {
		height: 400px;
		background: url(../img/feature/function_section01_title_bg.jpg) no-repeat;
		background-size: cover;
		position: relative;
	}

	#container #function_section01 .function_section_title h1 {
		width: 366px;
		height: 140px;
		text-indent: -9999px;
		background: url(../img/feature/function_section01_title.png) no-repeat;
		background-size: contain;
		position: absolute;
		top: 130px;
		left: 50%;
		margin-left: -486px;
	}

	#container .function01_02 {
		padding: 60px 0 42px;
		background: #262626;
	}

	#container .function01_02 #feature01 {
		margin-bottom: 40px;
	}
	
	#container .function01_02 .content_inner {
		display: flex;
		justify-content: space-between;
	}

	#container .function01_02 .content_inner .feature_text {
		width: 400px;
		padding-top: 30px;
		margin-left: 30px;
		color: #fff;
	}
	
	#container .function01_02 #feature01 .feature_header {
		width: 100%;
		height: 80px;
		margin-bottom: 13px;
		text-indent: -9999px;
		background: url(../img/feature/feature01_title.png) no-repeat;
		background-size: contain;
	}
	
	#container .function01_02 #feature02 .feature_header {
		width: 100%;
		height: 80px;
		margin-bottom: 13px;
		text-indent: -9999px;
		background: url(../img/feature/feature02_title.png) no-repeat;
		background-size: contain;
	}

	#container .function01_02 #feature01 .feature_header + p {
		margin-bottom: 5px;
	}
	
	#container .function01_02 .feature_text .hanging,
	#container .function01_02 .feature_text .feature_notes {
		font-size: 14px;
		line-height: 1.142;
	}

	#container .function01_02 #feature02 .feature_header + p {
		margin-bottom: 45px;
	}
	
	#container .function01_02 .content_inner .feature_img {
		width: 480px;
	}
	
	
}

@media screen and (max-width: 768px){	
	#container #function_section01 .function_section_title {
		background: url(../img/feature/function_section01_title_bg_sp.jpg) no-repeat bottom right;
		background-size: cover;
		position: relative;
	}
	
	#container #function_section01 .function_section_title h1 {
		padding: 70px 0 70px 16px;
		line-height: 1.36;
		font-size: 22px;
		font-weight: normal;
		font-family: 'Noto Serif Japanese', serif;
	}

	#container #function_section01 {
		background: #262626;
	}
	
	#container .function01_02 {
		min-width: 320px;
		width: 100%;
		max-width: 500px;
		padding: 35px 0 30px;
		margin: 0 auto;
		color: #fff;
		position: relative;
		overflow: hidden;
	}
	
	#container #feature01 {
		padding: 0 15px;
		margin-bottom: 34px;
	}

	#container .function01_02 .feature_header {
		margin-bottom: 12px;
	}
	
	#container .function01_02 .feature_header .header_sub {
		font-size: 14px;
		margin-bottom: 13px;
		text-align: center;
		border: 1px solid #fff;
		font-weight: normal;
		font-family: 'Noto Serif Japanese', serif;
	}

	#container .function01_02 .feature_header h2 {
		font-size: 20px;
		font-weight: normal;
		font-family: 'Noto Serif Japanese', serif;
	}

	#container .function01_02 .feature_text p {
		margin-bottom: 15px;
		font-size: 12px;
		line-height: 1.5;
	}

	#container #container .function01_02 .feature_text .hanging {
		margin-bottom: 20px;
	}

	#container .feature_img {
		margin-bottom: 23px;
		text-align: center;
	}

	#container .function01_02 #feature02 .feature_header,
	#container .function01_02 #feature02 .feature_text > p,
	#container .function01_02 #feature02 .feature_text .feature_img {
		padding: 0 15px;
	}
	
	#container .function01_02 #feature02 .feature_header + p {
		margin-bottom: 0;
	}

	#container .function01_02 #feature02 .text-notes {
		margin: 0;
		font-size: 10px;
		position: absolute;
		bottom: 30px;
		left: 15px;
	}

}

@media screen and (max-width: 768px){	
	#container #function_section01 .function_section_title h1 {
		padding: 101px 24px 110px 15px;
		font-size: 29px;
	}

	#container .function01_02 .feature_header {
		margin-bottom: 18px;
	}
	
	#container .function01_02 .feature_header .header_sub {
		font-size: 18px;
		margin-bottom: 19.5px;
		border: 1px solid #fff;
	}

	#container .function01_02 .feature_header h2 {
		margin-right: -15px;
		font-size: 27px;
	}

}

@media screen and (max-width: 500px){	
	#container #function_section01 .function_section_title h1 {
		padding: 20.1vw 4.8vw 21.9vw 15px;
		font-size: 5.8vw;
	}

	#container .function01_02 .feature_header {
		margin-bottom: 3.6vw;
	}
	
	#container .function01_02 .feature_header .header_sub {
		font-size: 3.7vw;
		margin-bottom: 3.9vw;
		border: .3vw solid #fff;
	}

	#container .function01_02 .feature_header h2 {
		margin-right: -15px;
		font-size: 5.3vw;
	}

}


/* function_section02 */
@media print, screen and (min-width: 769px){
	#container #function_section02 .function_section_title {
		height: 400px;
		background: url(../img/feature/function_section02_title_bg.jpg) no-repeat;
		background-size: cover;
		position: relative;
	}

	#container #function_section02 .function_section_title h2 {
		width: 520px;
		height: 160px;
		text-indent: -9999px;
		background: url(../img/feature/function_section02_title.png) no-repeat;
		background-size: contain;
		position: absolute;
		top: 120px;
		left: 50%;
		margin-left: -485px;
	}
	
	#container #function_section02 .function03_07 {
		padding-top: 80px;
		padding-bottom: 56px;
		background: url(../img/common/bg_usual.png) repeat;
	}

	#container #function_section02 .function03_07 .function03_05,
	#container #function_section02 .function03_07 .function06_07 {
		display: flex;
		justify-content: space-between;
	}
	
	#container #function_section02 .function03_07 .function03_05 {
		margin-bottom: 55px;
	}

	#container #function_section02 .function03_07 .function03_05 > div {
		width: 300px;
	}

	#container #function_section02 .function03_07 #feature03 .feature_header,
	#container #function_section02 .function03_07 #feature04 .feature_header,
	#container #function_section02 .function03_07 #feature05 .feature_header {
		width: 300px;
		height: 78px;
		margin-bottom: 9px;
		text-indent: -9999px;
	}
	
	#container #function_section02 .function03_07 #feature03 .feature_header {
		background: url(../img/feature/feature03_title.png) no-repeat;
		background-size: contain;
	}

	#container #function_section02 .function03_07 #feature04 .feature_header {
		background: url(../img/feature/feature04_title.png) no-repeat;
		background-size: contain;
	}

	#container #function_section02 .function03_07 #feature05 .feature_header {
		background: url(../img/feature/feature05_title.png) no-repeat;
		background-size: contain;
	}

	#container #function_section02 .function03_07 .feature_text p {
		min-height: 72px;
		margin-bottom: 16px;
		line-height: 1.5;
	}
	
	#container #function_section02 .function03_07 .function06_07 > div {
		width: 465px;
	}

	#container #function_section02 .function03_07 #feature06 .feature_header,
	#container #function_section02 .function03_07 #feature07 .feature_header {
		width: 465px;
		height: 78px;
		margin-bottom: 6px;
		text-indent: -9999px;
	}

	#container #function_section02 .function03_07 #feature06 .feature_header {
		background: url(../img/feature/feature06_title.png) no-repeat;
		background-size: contain;
	}

	#container #function_section02 .function03_07 #feature07 .feature_header {
		background: url(../img/feature/feature07_title.png) no-repeat;
		background-size: contain;
	}
	
	#container #function_section02 .function03_07 .function06_07 .feature_text p {
		margin-bottom: 12px;
		line-height: 1.875;
	}

}

@media screen and (max-width: 768px){
	#container #function_section02 .function_section_title {
		background: url(../img/feature/function_section02_title_bg_sp.jpg) no-repeat;
		background-size: cover;
		position: relative;
	}

	#container #function_section02 .function_section_title h2 {
		padding: 70px 0 40px 16px;
		line-height: 1.36;
		font-size: 22px;
		font-weight: normal;
		text-shadow: 0px 0px 20px #fff;
		font-family: 'Noto Serif Japanese', serif;
	}

	#container #function_section02 .function03_07 {
		padding: 35px 15px 14px;
		background: url(../img/common/bg_usual.png) repeat;
	}
	
	#container #function_section02 .function03_07 .feature_header {
		margin-bottom: 10px;
		font-size: 14px;
		font-weight: normal;
		font-family: 'Noto Serif Japanese', serif;
	}
	
	#container #function_section02 .function03_07 .feature_header .header_sub {
		margin-bottom: 10px;
		border: 1px solid #000000;
		text-align: center;
		line-height: 18px;
	}

	#container #function_section02 .function03_07 .feature_header h2 {
		font-size: 20px;
		line-height: 1.25;
	}
	
	#container #function_section02 .function03_07 .feature_text > p {
		margin-bottom: 13px;
		font-size: 12px;
		line-height: 1.5;
	}

	#container #function_section02 .function03_07 .feature_img {
		margin-bottom: 30px;
	}
	
	
}
@media screen and (max-width: 768px){
	#container #function_section02 .function_section_title h2 {
		padding: 101px 24px 110px 15px;
		font-size: 29px;
		color: #fff;
		text-shadow: 0px 0px 30px #000;
	}

	#container #function_section02 .function03_07 .feature_header {
		margin-bottom: 15px;
		font-size: 21px;
	}
	
	#container #function_section02 .function03_07 .feature_header .header_sub {
		margin-bottom: 15px;
		line-height: 27px;
		font-size: 18px;
	}

	#container #function_section02 .function03_07 .feature_header h2 {
		font-size: 27px;
	}
	
}

@media screen and (max-width: 500px){
	#container #function_section02 .function_section_title h2 {
		padding: 20.1vw 4.8vw 21.9vw 15px;
		font-size: 5.8vw;
		text-shadow: -1px 1px 1vw #000;
	}

	#container #function_section02 .function03_07 .feature_header {
		margin-bottom: 3vw;
		font-size: 4.2vw;
	}
	
	#container #function_section02 .function03_07 .feature_header .header_sub {
		margin-bottom: 3vw;
		border: .3vw solid #000000;
		line-height: 5.4vw;
		font-size: 3.7vw;
	}

	#container #function_section02 .function03_07 .feature_header h2 {
		font-size: 5.3vw;
	}
	
}



/* feat_other */
@media print, screen and (min-width: 769px){
	#container #feat_other {
		padding: 68px 0 64px;
	}
	
	#container #feat_other #feat_other_header {
		width: 204px;
		height: 41px;
		margin: 0 auto 40px;
		text-indent: -9999px;
		background: url(../img/feature/feat_other_title.png) no-repeat;
		background-size: contain;
	}
	
	#container #feat_other #feat_other01 .feature_header {
		width: 450px;
		height: 110px;
		text-indent: -9999px;
		background: url(../img/feature/feat_other01_title.png) no-repeat;
		background-size: contain;
	}

	#container #feat_other .content_inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 0 15px 80px;
		position: relative;
		box-sizing: border-box;
	}
	
	#container #feat_other .content_inner #feat_other01,
	#container #feat_other .content_inner .feat_other02_03 {
		width: 450px;
		margin-bottom: 3px;
	}

	#container #feat_other .content_inner .feat_other02_03 {
		display: flex;
		flex-wrap: wrap;
	}
	
	#container #feat_other .content_inner .feat_other02_03 #feat_other02 {
		width: 450px;
		order: 1;
	}
	
	#container #feat_other .content_inner .feat_other02_03 #feat_other03 {
		width: 450px;
		order: 2;
	}

	#container #feat_other .content_inner .feat_other02_03 .feat_other02_notes,
	#container #feat_other .content_inner .feat_other02_03 .feat_other03_notes {
		width: 960px !important;
		position: absolute;
		left: 15px;
		bottom: 1em;
	}
	
	#container #feat_other .content_inner .feat_other02_03 .feat_other02_notes {
		bottom: 2.5em;
	}
	
	#container #feat_other .content_inner .feat_other02_03 .feat_other02_notes {
		order: 3;
	}
	
	#container #feat_other .content_inner .feat_other02_03 .feat_other04_notes {
		order: 4;
	}
	
	#container #feat_other .content_inner #feat_other_notes {
		line-height: 1.57;
	}
	
	#container #feat_other .content_inner .feature_text p {
		margin-bottom: 14px;
		line-height: 1.5;
	}

	#container #feat_other .content_inner #feat_other01 .feature_header {
		margin-bottom: 12px;
	}

	#container #feat_other .content_inner #feat_other01 .feature_header p {
		margin-bottom: 14px;
	}
	
	#container #feat_other .content_inner #feat_other01 .feature_img {
		text-align: center;
	}
	
	#container #feat_other #feat_other02 {
		margin-bottom: 10px;
	}
	
	#container #feat_other #feat_other02 .feature_header {
		width: 450px;
		height: 70px;
		margin-bottom: 13px;
		text-indent: -9999px;
		background: url(../img/feature/feat_other02_title.png) no-repeat;
		background-size: contain;
	}
	
	#container #feat_other #feat_other02 .feature_text p {
		margin-bottom: 32px;
	}
	
	#container #nwes_feature #feat_other .feature_table table {
		width: 410px;
		margin: 0 auto;
		border-collapse: collapse;
		line-height: 44px;
	}

	#container #nwes_feature #feat_other .feature_table table caption {
		margin-bottom: 4px;
		text-align: right;
		font-size: 14px;
		line-height: 1;
	}

	#container #nwes_feature #feat_other .feature_table table th,
	#container #nwes_feature #feat_other .feature_table table td {
		text-align: center;
		font-weight: normal;
		border: solid 1px #e5e5e5;
	}

	#container #nwes_feature #feat_other .feature_table table th {
		width: 205px;
		background: #dbdbdb;
	}

	#container #feat_other #feat_other03 .feature_header {
		width: 450px;
		height: 70px;
		margin-bottom: 16px;
		text-indent: -9999px;
		background: url(../img/feature/feat_other03_title.png) no-repeat;
		background-size: contain;
	}

	#container #feat_other #feat_other03 .feature_text p {
		margin-bottom: 8px;
	}

}

@media screen and (max-width: 768px){

	#container #feat_other {
		padding: 35px 15px 0;
	}
	
	#container #feat_other #feat_other_header {
		line-height: 1.36;
		font-size: 20px;
		font-weight: normal;
		margin: 0 auto;
		text-shadow: 0px 0px 20px #fff;
		font-family: 'Noto Serif Japanese', serif;
	}

	#container #feat_other #feat_other_header h2 {
		margin-bottom: 29px;
		text-align: center;
	}
	
	#container #feat_other .content_inner .feature_header {
		margin-bottom: 10px;
		font-size: 14px;
		font-weight: normal;
		font-family: 'Noto Serif Japanese', serif;
	}
	
	#container #feat_other .content_inner .feature_header .header_sub {
		margin-bottom: 10px;
		border: 1px solid #000000;
		text-align: center;
		line-height: 18px;
	}

	#container #feat_other .content_inner .feature_header h3 {
		font-size: 20px;
		line-height: 1.25;
	}
	
	#container #feat_other .content_inner .feature_text > p {
		margin-bottom: 10px;
		font-size: 12px;
		line-height: 1.5;
	}

	#container #feat_other .content_inner #feat_other01 .feature_img {
		margin-bottom: 0;
	}
	
	#container #nwes_feature #feat_other .feature_table {
		margin-bottom: 11px;
	}

	#container #nwes_feature #feat_other .feature_table table {
		width: 100%;
		border-collapse: collapse;
		line-height: 33px;
	}

	#container #nwes_feature #feat_other .feature_table table caption {
		margin-bottom: 2px;
		text-align: right;
		font-size: 11px;
		line-height: 1;
	}

	#container #nwes_feature #feat_other .feature_table table th,
	#container #nwes_feature #feat_other .feature_table table td {
		text-align: center;
		font-weight: normal;
		font-size: 12px;
		border: solid 1px #e5e5e5;
	}

	#container #nwes_feature #feat_other .feature_table table th {
		width: 60%;
		background: #dbdbdb;
	}

	#container #nwes_feature #feat_other .feat_other_notes table {
		margin-bottom: 32px;
		font-size: 10px;
		line-height: 1.5;
	}

	#container #nwes_feature #feat_other #feat_other03 + .feat_other_notes table {
		margin-bottom: 50px;
	}
	
}

@media screen and (max-width: 768px){
	#container #feat_other {
		padding: 52px 15px 0;
	}
	
	#container #feat_other #feat_other_header {
		font-size: 27px;
		text-shadow: 0px 0px 30px #fff;
	}

	#container #feat_other #feat_other_header h2 {
		margin-bottom: 43.5px;
	}
	
	#container #feat_other .content_inner .feature_header {
		margin-bottom: 15px;
		font-size: 21px;
	}
	
	#container #feat_other .content_inner .feature_header .header_sub {
		margin-bottom: 15px;
		line-height: 27px;
	}

	#container #feat_other .content_inner .feature_header h3 {
		margin-right: -15px;
		font-size: 27px;
	}
}
@media screen and (max-width: 500px){
	#container #feat_other {
		padding: 10.5vw 15px 0;
	}
	
	#container #feat_other #feat_other_header {
		font-size: 5.3vw;
		text-shadow: 0 0 6vw #fff;
	}

	#container #feat_other #feat_other_header h2 {
		margin-bottom: 8.7vw;
	}
	
	#container #feat_other .content_inner .feature_header {
		margin-bottom: 3vw;
		font-size: 4.2vw;
	}
	
	#container #feat_other .content_inner .feature_header .header_sub {
		margin-bottom: 3vw;
		border: .3vw solid #000000;
		line-height: 5.4vw;
	}

	#container #feat_other .content_inner .feature_header h3 {
		margin-right: -15px;
		font-size: 5.3vw;
	}
	
	
}