@charset "utf-8";

/* ------------------
fv
--------------------- */
#fv {
  background: url(../images/common/fv_bg.jpg) center/cover no-repeat;
  padding: 120px 0 100px;
}
#fv h2{
	padding: 0 0 50px;
}

.fv_inner {
  width: 95%;
  max-width: 1400px;
  margin: 0 auto;
}

.fv_header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  flex-wrap: wrap;
}
.fv_header .item{
  width: 28%;
  height: auto;
}

.fv_text {
  width: 70%;
}

.fv_header_chach{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.fv_header_chach p {
  font-size: 34px;
  background: url(../images/common/bg_text.svg) center top/cover no-repeat;
  display: inline-block;
  padding: 11px 20px 40px;
  border-radius: 20px;
  margin-bottom: 15px;
  font-weight: bold;
  line-height: 160%;
}
.fv_header_chach p small{
	font-size: 30px;
}

.fv_header_chach p span {
  color: #1397c2;
  font-family: "Noto-Sans-JP-Bold";
  margin: 0 5px;
}
.fv_header_chach p strong{
  font-family: "Noto-Sans-JP-Bold";
  font-size: 45px;
}

.fv_header_chach img {
  width: 15%;
  height: auto;
  margin-top: -40px;
}

.fv_text h3 {
  font-size: 57px;
  font-family: "Noto-Sans-JP-Bold";
  margin-top: 20px;
  line-height: 1.5;
}
.fv_text h3 span{
	display: inline-block;
	padding: 8px 10px;
	background: #fff;
}

.fv_check_list {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  gap: 20px;
}

.fv_check_list li {
  position: relative;
  width: calc(100% / 4 - 10px);
  background: #003366;
  color: #fff;
  padding: 20px 15px;
  text-align: center;
}
.fv_check_list li .check{
  z-index: 1;
  position: absolute; 
  left: 50%;
  top: -13px;
  transform: translate(-50%,0);
}

.fv_check_list li p{
  font-size: 20px;
  line-height: 1.5;
}
.fv_check_list li p span {
  color: #ffe45f;
  font-family: "Noto-Sans-JP-Bold";
}

.fv_check_list .check {
  width: 26px;
  height: 26px;
  margin-bottom: 10px;
}

.fv_footer {
  text-align: center;
  padding: 30px 0;
  margin-top: 50px;
}

.fv_footer .fv_footer-p {
  font-size: 30px;
  margin-bottom: 30px;
}
.fv_footer .fv_footer-p span{
	position: relative;
	padding: 0 40px;
}
.fv_footer .fv_footer-p span:before,
.fv_footer .fv_footer-p span:after{
	position: absolute;
	content: "";
	bottom: 0;
	width: 30px;
	height: 49px;
}
.fv_footer .fv_footer-p span:before{
	right: 0;
	background: url(../images/common/text_deco_r.svg) center/cover no-repeat;
}
.fv_footer .fv_footer-p span:after{
	left: 0;
	background: url(../images/common/text_deco_l.svg) center/cover no-repeat;
}

.fv_footer dl {
  display: flex;
  align-items: center;
  background: #fff;
	
}
.fv_footer dl dt {
  padding: 17px 10px;
  width: 47%;
  position: relative;
  color: #fff;
  font-family: "Noto-Sans-JP-Bold";
  font-size: 14px;
}
.fv_footer dl dt p{
  position: relative;
  z-index: 2;
  font-size: 35px;
  text-align: center;
}
.fv_footer dl dt:before{
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg,#e34a6f 0%, #ff9472 100%);
	clip-path: polygon(0 0, 100% 0%, 90% 100%, 0% 100%);
}

.fv_footer dl dd {
  padding: 17px 10px;
  width: 53%;
  text-align: left;
  font-family: "Noto-Sans-JP-Bold";
  font-size: 35px;
}


p.address { line-height: 160%; font-size: 14px; } 

/* ------------------
new_robot
--------------------- */

#new_robot {
    padding: 95px 0 0;
}

#new_robot h3.title {
    font-size: 36px;
    color: #005796;
    margin: 0 0 60px;
}

#new_robot h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#new_robot .flex_box {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 0 0 60px -40px;
    overflow: hidden;
}

#new_robot .flex_box article {
    width: calc((100% - 40px * 3) / 3);
    margin: 0 0 0 40px;
}

#new_robot .flex_box article a {
    display: block;
}

#new_robot .flex_box article a .imgbox {
    margin: 0 auto 20px;
}

#new_robot .flex_box article a .textbox p {
    margin: 0 auto 8px;
    font-size: 14px;
    font-family: "Noto-Sans-JP-Regular";
    color: #004680;
}

#new_robot .flex_box article a .textbox h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 62px;
    overflow: hidden;
    font-size: 18px;
    font-family: "Noto-Sans-JP-Regular";
    line-height: 1.7;
    color: #000;
}

#new_robot .detail-btn {
    text-align: center;
}

#new_robot .detail-btn a {
    position: relative;
    display: inline-block;
    border: solid 1px #005796;
    padding: 20px 100px;
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    color: #005796;
    letter-spacing: 1px;
}

#new_robot .detail-btn a::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 20px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(45deg);
}

/* ------------------
philosophy
--------------------- */
#philosophy {
    padding: 132px 0 40px;
}

#philosophy h3.title {
    font-size: 36px;
    color: #005796;
    margin: 0 0 60px;
}

#philosophy h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#philosophy ul.cfx {
    max-width: 900px;
    margin: 0 auto;
}

#philosophy ul.cfx li .item,
#philosophy ul.cfx li span {
    display: inline-block;
}

#philosophy ul.cfx li .item {
    width: 60px;
    margin-right: 83.5px;
    margin-bottom: 58px;
}

#philosophy ul.cfx li span {
    font-size: 20px;
    line-height: 28px;
    font-family: "Noto-Sans-JP-Regular";
}

/* ------------------
service
--------------------- */
#service {
    height: 1217px;
    background: url(../images/common/bg-service.png) no-repeat;
    background-size: cover;
    width: 100%;
}

#service h3.title {
    font-size: 36px;
    color: #005796;
    padding: 93px 0 67px;
}

#service h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#service .services {
    width: 1000px;
    margin: 0 auto;
}

#service .services .block > h4 {
    font-size: 19px;
    margin: 13px 0;
    font-size: 19px;
    color: #005796;
    font-family: "Noto-Sans-JP-Medium";
}

#service .services .block {
    max-width: 478px;
    display: inline-block;
    height: 430px;
    margin-bottom: 22.5px;
}

#service .services .block:nth-child(2n) {
    float: right;
}

#service .services .block p {
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    text-align: left;
    line-height: 26px;
    color: #333;
}

#service .services .block .line {
    background-color: #333333;
    width: 100%;
    height: 1px;
    margin-bottom: 16px;
}

/* ------------------
intro
--------------------- */
#intro {
    max-width: 1200px;
    margin: 0 auto;
}

#intro h3.title {
    font-size: 36px;
    color: #005796;
    padding: 93px 0 67px;
}

#intro h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#intro .video-intro {
    display: block;
    margin-bottom: 130px;
    text-align: center;
}

#intro .blocks .content {
    width: 1100px;
    background-color: #f7fafb;
    height: 477px;
    margin-left: auto;
}

#intro .blocks > img {
    margin-top: -31px;
    float: left;
    margin-left: 30px;
}

#intro .blocks {
    margin-bottom: 177px;
    width: 1300px;
    float: left;
}

#intro .blocks .content h4 {
    font-size: 20px;
    font-family: "NotoSerifCJKjp-Regular";
    font-weight: 500;
    line-height: 28px;
    color: #005796;
    text-align: center;
    height: 158px;
    max-width: 500px;
    width: 100%;
    background-color: yellow;
    background: url(../images/common/bg-intro.png) no-repeat;
    margin: 40px 50px 29.5px 0;
    padding-top: 40px;
    box-sizing: border-box;
}

#intro .blocks .content h4 > span {
    font-size: 29px;
    line-height: 29px;
    color: #005796;
}

#intro .blocks .content h4,
#intro .blocks .content p {
    float: right;
}

#intro .blocks .content p {
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    line-height: 36px;
    max-width: 500px;
    padding-right: 50px;
}

#intro .blocks .content .number .line {
    width: 263px;
    height: 10px;
    background-color: #ffe45f;
    display: block;
    margin: -10px auto;
}

#intro .blocks .content .number {
    position: relative;
}

#intro .blocks .content .number > span {
    position: relative;
    z-index: 2;
    font-size: 32px;
    line-height: 50px;
}

#intro .blocks2 .content {
    width: 1100px;
    background-color: #f4f7fa;
    height: 477px;
    margin-right: auto;
}

#intro .blocks2 > img {
    margin-top: -31px;
    float: right;
    margin-right: 30px;
}

#intro .blocks2 {
    margin-bottom: 100px;
    width: 1300px;
    float: right;
}


#intro .blocks2 .content h4 {
    font-size: 20px;
    font-family: "NotoSerifCJKjp-Regular";
    line-height: 28px;
    color: #005796;
    text-align: center;
    height: 158px;
    max-width: 500px;
    width: 100%;
    background-color: yellow;
    background: url(../images/common/bg-intro.png) no-repeat;
    background-size: cover;
    margin: 40px 0 29.5px 50px;
    padding-top: 40px;
    box-sizing: border-box;
}

#intro .blocks2 .content h4 > span {
    font-size: 29px;
    line-height: 29px;
    color: #005796;
}

#intro .blocks2 .content h4,
#intro .blocks2 .content p {
    float: left;
}

#intro .blocks2 .content p {
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    font-weight: 400;
    line-height: 36px;
    max-width: 500px;
    padding-left: 50px;
}

#intro .blocks2 .content .number .line {
    width: 263px;
    height: 10px;
    background-color: #ffe45f;
    display: block;
    margin: -10px auto;
}

#intro .blocks2 .content .number {
    position: relative;
}

#intro .blocks2 .content .number > span {
    position: relative;
    z-index: 2;
    font-size: 32px;
    line-height: 50px;
}

#intro .blocks .content .number > span > span.bold,
#intro .blocks2 .content .number > span > span.bold {
    font-size: 48px;
    font-weight: bold;
}

#intro .blocks .content .number > span > span.dv,
#intro .blocks2 .content .number > span > span.dv {
    font-size: 24px;
}

@media only screen and (max-width: 1300px) {
	#intro .blocks .content h4 { margin: 40px 25px 29.5px 0;}
	#intro .blocks .content p { padding-right: 25px;}
	#intro .blocks > img{width: 550px;height: auto;}
	#intro .blocks { width: 1140px;}
	
	#intro .blocks2 .content h4 { margin: 40px 0 29.5px 25px;}
	#intro .blocks2 .content p { padding-left: 25px;}
	#intro .blocks2 { width: 1140px;}
	#intro .blocks2 > img {width: 550px; height: auto;}
}

/* ------------------
movie
--------------------- */
/*
#movie {
    background: url(../images/common/bg-movie.jpg) no-repeat center center / cover;
    padding: 100px 0 120px;
}

#movie h2 {
    margin: 0 auto 60px;
    font-size: 36px;
    color: #fff;
    text-align: center;
    letter-spacing: 2px;
}

#movie h2 span {
    display: block;
    margin: 0 0 8px;
    font-size: 16px;
    color: #fff;
    letter-spacing: 4px;
}

#movie .m_list {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 68px;
}

#movie .m_list .ml_main {
    width: 640px;
}

#movie .m_list .ml_main article {
    width: 100%;
}

#movie .m_list .ml_main article a {
    display: block;
}

#movie .m_list .ml_main article a .imgbox {
    width: 100%;
    margin: 0 0 32px;
}

#movie .m_list .ml_main article a .imgbox img {
    width: 100%;
    height: auto;
}

#movie .m_list .ml_main article a .textbox {
    width: 100%;
}

#movie .m_list .ml_main article a .textbox h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 48px;
    overflow: hidden;
    margin: 0 0 8px;
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    line-height: 1.5;
    color: #fff;
}

#movie .m_list .ml_main article a .textbox p {
    font-size: 14px;
    font-family: "Noto-Sans-JP-Regular";
}

#movie .m_list .ml_sub {
    width: calc(100% - 640px);
    padding: 0 0 0 32px;
    box-sizing: border-box;
}

#movie .m_list .ml_sub article {
    width: 100%;
    border-bottom: solid 1px rgba(255, 255, 255, 0.4);
}

#movie .m_list .ml_sub article:first-child {
    border-top: solid 1px rgba(255, 255, 255, 0.4);
}

#movie .m_list .ml_sub article a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
}

#movie .m_list .ml_sub article a .imgbox {
    width: 170px;
}

#movie .m_list .ml_sub article a .imgbox img {
    width: 100%;
    height: auto;
}

#movie .m_list .ml_sub article a .textbox {
    width: calc(100% - 170px);
    padding: 0 0 0 16px;
    box-sizing: border-box;
}

#movie .m_list .ml_sub article a .textbox h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 48px;
    overflow: hidden;
    margin: 0 0 10px;
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    line-height: 1.5;
    color: #fff;
}

#movie .m_list .ml_sub article a .textbox p {
    font-size: 14px;
    font-family: "Noto-Sans-JP-Regular";
    color: #fff;
}

#movie .detail-btn {
    text-align: center;
}

#movie .detail-btn a {
    position: relative;
    display: inline-block;
    border: solid 1px #fff;
    padding: 20px 100px;
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    color: #fff;
}

#movie .detail-btn a::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 20px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(45deg);
}
*/

/* ------------------
robot
--------------------- */
#robot {
	background: url(../images/common/bg-robot.gif) no-repeat center center / cover;
	padding: 100px 0;
}

#robot .robot__sharing h3 {
	margin-bottom: 24px;
	color: #135997;
}

#robot .robot__sharing h3 span {
	color: #135997;
}

#robot .robot__sharing .intro {
	margin-bottom: 60px;
	font-size: 16px;
	text-align: center;
	line-height: 2;
}

#robot .robot__sharing .sharing-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-left: -40px;
	margin-bottom: 80px;
	overflow: hidden;
}

#robot .robot__sharing .sharing-list article {
	width: calc((100% - 40px * 3) / 3);
	margin: 0 0 40px 40px;
}

#robot .robot__sharing .sharing-list article .title {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background-color: #10598e;
	padding: 12px 16px;
}

#robot .robot__sharing .sharing-list article .title .icon {
	display: flex;
	justify-content: center;
	align-items: center;
}

#robot .robot__sharing .sharing-list article .title .icon img {
	width: 40px;
	height: auto;
}

#robot .robot__sharing .sharing-list article .title h4 {
	padding-left: 12px;
	font-size: 18px;
	font-family: 'Noto-Sans-JP-Regular',sans-serif;
	color: #fff;
	letter-spacing: normal;
	text-align: left;
	line-height: 1.3;
}

#robot .robot__sharing .sharing-list article .content {
	background-color: #fff;
	padding: 16px 16px 24px;
}

#robot .robot__sharing .sharing-list article .content h5 {
	margin-bottom: 12px;
	font-size: 18px;
	font-family: 'Noto-Sans-JP-Light',sans-serif;
	text-align: center;
}

#robot .robot__sharing .sharing-list article .content ul {
	display: flex;
	align-items: center;
}

#robot .robot__sharing .sharing-list article .content ul li {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-grow: 1;
	min-height: 52px;
	border-radius: 1000px;
	background-color: #d3dde6;
	font-size: 16px;
	color: #10598e;
	text-align: center;
	line-height: 1.2;
}

#robot .robot__sharing .sharing-list article .content ul li + li {
	position: relative;
	margin-left: 20px;
}

#robot .robot__sharing .sharing-list article .content ul li + li::before {
	position:absolute; 
	content: ""; 
	display: block; 
	width: 6px; 
	height: 20px;
	border-left: 6px solid #10598e; 
	border-top: 10px solid transparent; 
	border-bottom: 10px solid transparent; 
	box-sizing: border-box; 
	left: -13px;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

#robot .robot__movie h3 {
	margin-bottom: 52px;
	color: #135997;
}

#robot .robot__movie h3 span {
	color: #135997;
}

#robot .robot__movie .flex_box {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-left: -40px;
    overflow: hidden;
}

#robot .robot__movie .flex_box article {
    width: calc((100% - 40px * 3) / 3);
    margin: 0 0 0 40px;
}

#robot .robot__movie .flex_box article a {
    display: block;
}

#robot .robot__movie .flex_box article a .imgbox {
    margin: 0 auto 20px;
}

#robot .robot__movie .flex_box article a .textbox p {
    margin: 0 auto 8px;
    font-size: 14px;
    font-family: "Noto-Sans-JP-Regular";
    color: #004680;
}

#robot .robot__movie .flex_box article a .textbox h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    max-height: 62px;
    overflow: hidden;
    font-size: 18px;
    font-family: "Noto-Sans-JP-Regular";
    line-height: 1.7;
    color: #000;
}

#robot .robot__movie .detail-btn {
    text-align: center;
}

#robot .robot__movie .detail-btn a {
    position: relative;
    display: inline-block;
    border: solid 1px #005796;
    padding: 20px 100px;
    font-size: 16px;
    font-family: "Noto-Sans-JP-Regular";
    color: #005796;
    letter-spacing: 1px;
}

#robot .robot__movie .detail-btn a::before {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 20px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(45deg);
}

/* ------------------
price
--------------------- */
#price{
	padding: 100px 0;
}
#price .price_inner{
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}
#price h3{
	margin-bottom: 24px;
	color: #135997;
}
#price h3 > span{
  	font-size: 16px;
  	color: #005796;
  	text-transform: uppercase;
}

#price .describe{
	padding: 0 0 80px;
	font-size: 24px;
	text-align: center;
	line-height: 1.5;
}

#price .price_note{
	padding: 35px 0 0;
}
#price .price_note p{
	font-size: 16px;
	line-height: 1.5;
	padding-left: 1rem;
    text-indent: -1rem;
}

.plan-wrapper {
    display: flex;
    align-items: flex-end;
    gap: 15px;
}

.plan-labels {
    min-width: 160px;
}

.plan-labels .label {
    font-size: clamp(16px,1.3vw,20px);
    justify-content: left;
    padding: 0 10px;
}

.plan-labels .label,
.plan-body .item{
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

.plan-body .item:nth-of-type(odd),
.plan-labels .label:nth-of-type(even){
    background: #ebedf6;
}

.plan-card {
	position: relative;
    flex: 1;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    min-width: 220px;
}

.plan-header {
    text-align: center;
/*     height: 197px; */
    display: flex;
    align-items: center;
    justify-content: end;
    flex-direction: column;
}

.plan-header .plan-th{
	height: 91px;
	width: 100%;
	padding: 20px 10px;
	box-sizing: border-box;
	border-radius: 12px 12px 0 0;
}

.plan-header .tag {
    font-size: 18px;
    margin-bottom: 9px;
}
.plan-header .tag strong{
	font-size: 23px;
}

.plan-header h4 {
    font-size: clamp(19px,1.6vw,23px);
}

.plan-header .plan-td{
	height: 105px;
	width: 100%;
	padding: 20px 10px;
	box-sizing: border-box;
}

.plan-header .price {
    font-size: 22px;
    font-weight: bold;
    margin: 6px 0;
}
.plan-header .price strong{
	font-family: 'Noto-Sans-JP-Bold',sans-serif;
	font-size: clamp(30px,2vw,39px);
}

.plan-header .sub {
	padding: 10px 0 0;
    font-size: 16px;
}

.plan-body .item {
    padding: 15px 15px 15px 30px;
    font-size: clamp(15px,1.2vw,18px);
}

.plan-body .item p{
    padding-left: 40px;
    position: relative;
}

.plan-body .item p::before {
	position: absolute;
	content: "";
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 26px;
	height: 26px;
}

.plan-body .item.cross p::before {
	background: url(../images/common/icn_cross.svg) center/cover no-repeat;
}

.plan-body .item:not(.cross) p::before {
	background: url(../images/common/icn_check_b.svg) center/cover no-repeat;
}

.plan-card.new:before {
    background: #f4ce4d;  
    font-weight: bold;
    padding: 20px 5px;
    box-sizing: border-box;
    position: absolute;
    content: "NEW";
    width: 60px;
    height: 60px;
    top: -40px;
    right: 15px;
    z-index: 10px;
    font-size: 18px;
    text-align: center;
    border-radius: 100px;
}


/* カラーテーマ */
.plan-card .plan-header .plan-th {
    background: linear-gradient(90deg, #1a4e9f, #5dc2d8);
    color: #fff;
}

.plan-card.emphasis .plan-header .plan-th{
    background: linear-gradient(90deg, #e64070, #f8cea5);
}

.plan-card.emphasis .plan-body .item:not(.cross) p::before {
	background: url(../images/common/icn_check_r.svg) center/cover no-repeat;
}



/* ------------------
qa
--------------------- */
#qa {
	padding-bottom: 100px;
    background-color: #d2dce6;
/*     height: 690px; */
}

#qa h3.title {
    font-size: 36px;
    color: #005796;
    padding: 96px 0 68px;
}

#qa h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#qa dl {
    width: 1100px;
    background-color: #ffffff;
    margin: 10px auto;
    position: relative;
    padding: 22px 80px 22px 50px;
    box-sizing: border-box;
    clip-path: polygon(1% 0%, 100% 0, 100% 91%, 99% 100%, 0 100%, 0 10%);
}

#qa dl .down {
    position: absolute;
    right: 43px;
    top: 22px;
}

#qa dl dt {
    margin-bottom: 13.5px;
}

#qa dl dd {
    font-family: "NotoSansCJKjp-Regular";
}

#qa dl dt > span,
#qa dl dt > .sub {
    display: inline-block;
}

#qa dl dt > .sub {
    max-width: 90%;
}

#qa dl dt > span,
#qa dl dd > span.word {
    font-size: 28px;
    font-family: trajan-pro-3, serif;
    font-weight: 400;
    font-style: normal;
    margin-right: 22px;
}

#qa dl dt > .sub {
    font-size: 20px;
    font-weight: normal;
}

#qa dl dd > .sub {
    font-size: 15px;
    line-height: 29px;
    max-width: 90%;
}

#qa dl dd .sub,
#qa dl dd > span {
    display: inline-block;
    font-family: "Noto-Sans-JP-Medium";
}

#qa dl dd > span {
    vertical-align: top;
}

/* ------------------
contact
--------------------- */
#contact {
    width: 100%;
    position: relative;
    height: auto;
}

#contact h3.title {
    font-size: 36px;
    color: #005796;
    padding: 96px 0 68px;
}

#contact h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#contact .content .form {
    max-width: 950px;
    width: 100%;
    background-color: #ffffff;
    margin: 0 auto;
}

#contact .content .form form .form-group {
    margin-bottom: 15px;
    text-align: left;
}

#contact .content .form form .form-group input[type="text"] {
    width: 100%;
    border-radius: 4px;
    margin-top: 10px;
    line-height: 20px;
    border: 1px solid #cecece;
    padding: 10px;
    box-sizing: border-box;
    max-width: 660px;
    background-color: #f3f7f9;
    border-radius: 0;
}

#contact .content .form form .form-group input::placeholder,
#contact .content .form form .form-group label {
    font-size: 16px;
    width: 200px;
}

#contact .content .form form .form-group label span {
    color: red;
    vertical-align: middle;
}

#contact .content .form-submit-wrap {
    text-align: center;
    max-width: 900px;
    margin: 100px 0;
}

#contact .content .form form .form-group input[type="text"],
#contact .content .form form .form-group label {
    display: inline-block;
}

#contact .content .form form .form-group label {
    width: 200px;
}

#contact .content .submit input {
    padding: 15px 65px;
    background-color: #c90022;
    font-size: 16px;
    color: #fff;
    border-radius: 0;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

#contact .content .form form .form-group .form-check {
    display: inline-block;
    margin-right: 40px;
}

#contact .content .form form .form-group .form-check > label {
    width: auto;
}

#contact .content .form form textarea {
    width: 100%;
    max-width: 660px;
    box-sizing: border-box;
    border: 1px solid #cecece;
    background-color: #f3f7f9;
    padding: 10px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    box-shadow: none;
    border-radius: 0;
}

#contact .content .form form .last > label {
    vertical-align: top;
    padding-top: 5px;
}

/* ------------------
sponsors
--------------------- */
#sponsors {
    width: 100%;
    height: 434px;
    background-color: #d2dce6;
}

#sponsors h3.title {
    font-size: 36px;
    color: #005796;
    padding: 84px 0 68px;
}

#sponsors h3 > span {
    font-size: 16px;
    color: #005796;
    text-transform: uppercase;
}

#sponsors .cfx li {
    display: inline-block;
    text-align: left;
}

#sponsors .cfx li:last-child {
    float: right;
}

#sponsors .cfx li:first-child {
    float: left;
}

#sponsors .cfx li a {
    color: #000000;
    line-height: 35px;
}

#sponsors .cfx {
    text-align: center;
    width: 1100px;
    display: block;
    margin: 0 auto;
}

#fv h2 > span.SP {
    display: none;
}

br.hide {
    display: none;
}

/* ------------------
エラー画面
--------------------- */
.note {
    padding: 70px 0;
    margin: 100px auto 0;
}

.note h3 {
    font-size: 2.8rem;
    font-size: 28px;
    text-align: center;
    letter-spacing: 1px;
    padding: 0 0 20px;
}

.note .caution {
    font-size: 16px;
    line-height: 27px;
    text-align: center;
    border: solid 1px #000;
    padding: 20px 0;
    width: 700px;
    margin: 0 auto 30px;
}

.note .alert span {
    display: block;
    font-size: 1.8rem;
    font-size: 18px;
    text-align: center;
    padding: 0 0 20px;
}

.note .btn {
    padding: 30px 0 0;
    text-align: center;
}

.note .btn a {
    background: #005796;
    display: inline-block;
    *display: inline;
    *zoom: 1;
    width: 300px;
    font-size: 1.6rem;
    font-size: 16px;
    color: #fff;
    line-height: 60px;
}

/* ------------------
確認画面
--------------------- */
.note table {
    margin: 0 auto;
    width: 700px;
}

.note table tr {
    border-bottom: 1px solid #d5d5d5;
}

.note table tr:first-child {
    border-top: 1px solid #d5d5d5;
}

.note table th {
    width: 200px;
    padding: 15px 0;
    text-align: left;
}

.note table td {
    width: inherit;
    font-size: 16px;
    padding: 15px 0 15px 40px;
}

.note input[type="submit"] {
    background: #c90022;
    vertical-align: top;
    line-height: 60px;
    padding: 0;
    margin: 0 0 0 10px;
    color: #fff;
    width: 300px;
}

#thanks .alert {
    text-align: center;
    line-height: 27px;
}

#price span.lies {
    color: #c60909;
}

/* -------------------------------- mobile ---------------------------------- */
@media only screen and (max-width: 640px) {
    /* ------------------
	common
	--------------------- */
    br.hide {
        display: block;
    }
    br.show {
        display: none;
    }

    #intro .video-intro iframe {
        position: relative;
        top: 0;
        left: 0;
        width: 100%;
        height: 200px;
    }

    #service .services .block img {
        width: 100%;
        height: auto;
    }

    #intro .blocks img {
        width: 100%;
        margin-left: 0;
        height: auto;
    }

    #intro .blocks .content,
    #intro .blocks2 .content,
    #qa dl,
    #sponsors .cfx {
        width: auto;
    }
    #contact .content .form form textarea {
        width: 100%;
    }

    /* ------------------
	fv
	--------------------- */
    #fv {
	  background: url(../images/common/fv_bg-sp.jpg) center/cover no-repeat;
	  padding: 60px 0 50px;
	}
	#fv h2{
		width: 200px;
		padding: 0 0 15px;
	}
	#fv h2 img{
		width: 100%;
		height: auto;
	}
	
	.fv_header_chach img{
		display: none;
	}
	
	.fv_text{
		width: 100%;
	}

	.fv_header_chach p {
	  width: 100%;
	  max-width: 350px;
      text-align: center;
	  font-size: 16px;
	  padding: 7px 14px 19px;
	  margin: 0 auto;
	}
	
	.fv_header_chach p small {
	  font-size: 12px;
	}
	
	.fv_header_chach p strong {
	  font-size: 22px;
	}
	
	.fv_text h3{
		font-size: 24px;
		line-height: 2;
	}
	.fv_text h3 span{
		font-feature-settings: 'palt';
	}

	.fv_header .item{
		width: 65%;
		margin: 20px auto 0;
	}
	
	.fv_check_list{
		margin-top: 30px;
		gap: 1%;
		flex-wrap: wrap;
	}
	.fv_check_list li{
		width: 48%;
		box-sizing: border-box;
		margin-bottom: 5%;
		padding: 15px 5px;
	}
	.fv_check_list li p{
		font-size: 14px;
	}
	
	.fv_footer{
		padding: 0;
		margin-top: 20px;
	}

	.fv_footer .fv_footer-p {
	  font-size: 15px;
	  margin-bottom: 15px;
	}
	.fv_footer .fv_footer-p br{
		line-height: 0;
	}
	
	.fv_footer .fv_footer-p span::before,
	.fv_footer .fv_footer-p span::after {
	  width: 15px;
	  height: 20px;
	}
	
	.fv_footer .fv_footer-p span {
	  display: inline-block;
	  padding: 0 20px;
	  line-height: 1.3;
	}

	.fv_footer dl {
	  flex-direction: column;
	}
	
	.fv_footer dl dt {
	  width: 100%;
	  font-size: 12px;
	  box-sizing: border-box;
	}
	
	.fv_footer dl dt::before {
	  clip-path: none;
	}
	
	.fv_footer dl dt p {
	  font-size: 20px;
	}
	.fv_footer dl dt p small{
	  font-size: 15px;
	}
	
	.fv_footer dl dd {
	  padding: 25px 10px;
	  width: 100%;
	  font-size: 20px;
	  box-sizing: border-box;
	  text-align: center;
	}


    /* ------------------
	new_robot
	--------------------- */
	#new_robot {
		padding: 50px 0 0;
	}
    #new_robot h3 > span {
	    margin: 0;
        font-size: 12px;
    }
    #new_robot h3.title {
        margin: 0 0 24px;
        font-size: 24px;
    }
    #new_robot .flex_box {
        display: block;
        margin: 0 auto;
    }

    #new_robot .flex_box article {
        width: 100%;
        margin: 0 0 32px;
    }

    #new_robot .flex_box article a .imgbox {
        width: 100%;
        margin: 0 auto 12px;
    }

    #new_robot .flex_box article a .imgbox img {
        width: 100%;
        height: auto;
    }

    #new_robot .flex_box article a .textbox p {
        margin: 0 auto 8px;
        font-size: 12px;
    }

    #new_robot .flex_box article a .textbox h3 {
        max-height: 48px;
        font-size: 14px;
    }

    #new_robot .detail-btn a {
        min-width: 270px;
        padding: 20px 40px 22px;
        box-sizing: border-box;
        font-size: 14px;
    }

    #new_robot .detail-btn a::before {
        right: 16px;
        width: 8px;
        height: 8px;
    }

    /* ------------------
	philosophy
	--------------------- */
    #philosophy {
        padding: 105px 20px 20px;
    }
    #philosophy h3 > span {
        font-size: 12px;
    }
    #philosophy h3.title {
        margin: 0 0 34px;
        font-size: 24px;
    }
    #philosophy ul.cfx li .item {
        display: block;
        margin: 10px auto;
    }
    #philosophy ul.cfx li {
        text-align: center;
        margin: 0 auto 30px;
    }
    #philosophy ul.cfx li span {
        font-size: 16px;
        line-height: 23px;
    }
    #philosophy ul.cfx li .item > img {
        width: 35px;
        height: auto;
    }

    /* ------------------
	service
	--------------------- */
    #service .services {
        padding: 0 20px;
        width: auto;
    }
    #service .services .block {
        height: auto;
        max-width: initial;
        margin-bottom: 35px;
    }
    #price ul.cfx .block {
        display: block;
        width: 100%;
        border-width: 4px;
        margin-bottom: 25px;
        line-height: 22px;
        height: inherit;
        padding: 27px 0 28px;
    }
    
    #price ul.cfx .block:last-child { 
	    padding-top: 0;
    }
    
	#price ul.cfx .block .tt_box{
		padding: 0px;
	}
	
	#price ul.cfx .block .tt_box .img{
		width: 23%;
		max-width: 100px;
		margin: 0 3% 0 0;
	}
	#price ul.cfx .block .tt_box .img img {
		width: 100%;
	}
	#price ul.cfx .block .text_big{
		font-size: 14px;
    line-height: 160%;
	}
	#price ul.cfx .block .text_big span{
		font-size: 17px;
	
		padding: 10px 0 0;
	}

    
    
    
    #service h3.title {
        font-size: 24px;
        padding: 42.5px 0 30px;
    }
    #service h3 > span {
        font-size: 11px;
    }
    #service .services .block > h4 {
        font-size: 17px;
        text-align: center;
    }
    #service .services .block p {
        font-size: 14px;
        font-family: "Noto-Sans-JP-DemiLight";
        line-height: 23px;
    }
    #service {
        height: auto;
    }
    #service .services .block:nth-child(2n) {
        float: none;
    }

    /* ------------------
	intro
	--------------------- */
    #intro .blocks2 .content h4 {
        width: auto;
    }
    #intro .blocks2 > img {
        margin-right: 0;
        width: 100%;
        height: auto;
    }
    #intro .blocks2,
    #intro .blocks {
        width: auto;
    }
    #intro h3 > span {
        font-size: 12px;
    }
    #intro h3.title {
        font-size: 24px;
        padding: 50px 0 22px;
    }
    #intro .video-intro {
        position: relative;
        padding-bottom: 56.25%;
        height: 0;
        overflow: hidden;
        width: 90%;
        margin: 0 auto 50px;
    }
    #intro .video-intro iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    #intro .blocks,
    #intro .blocks2 {
        padding: 20px;
        margin-bottom: 30px;
    }
    #intro .blocks .content p {
        font-family: "Noto-Sans-JP-DemiLight";
        margin-right: 0;
        line-height: 23px;
        width: 125%;
        text-align: justify;
        padding-right: 0;
    }
    #intro .blocks .content h4 {
        font-size: 17px;
        line-height: 22px;
        height: auto;
        background: none;
        padding-top: 0;
        margin: 45px 0;
        width: 120%;
    }
    #intro .blocks .content {
        background: url(../images/common/bg-mobile-intro.png) no-repeat;
        background-color: #f7fafb;
        margin: 0;
        position: relative;
        z-index: -1;
        margin-left: auto;
        width: 80%;
        margin-right: -10px;
        padding-right: 10px;
    }
    #intro .blocks .content .number > span {
        font-size: 18px;
    }
    #intro .blocks .content .number > span > span.bold {
        font-size: 50px;
    }
    #intro .blocks .content .number .line {
        width: 180px;
    }
    #intro .blocks2 .content p {
        font-family: "Noto-Sans-JP-DemiLight";
        margin-left: 0;
        line-height: 23px;
        width: 125%;
        text-align: justify;
        padding-left: 0;
    }
    #intro .blocks2 .content h4 {
        font-size: 17px;
        line-height: 22px;
        height: auto;
        background: none;
        padding-top: 0;
        margin: 45px 0;
        width: 120%;
    }
    #intro .blocks2 .content {
        background: url(../images/common/bg-mobile-intro.png) no-repeat;
        background-color: #f7fafb;
        margin: 0;
        position: relative;
        z-index: -1;
        margin-right: auto;
        width: 80%;
        margin-left: -10px;
        padding-left: 10px;
    }
    #intro .blocks2 .content .number > span {
        font-size: 18px;
    }
    #intro .blocks2 .content .number .line {
        width: 180px;
    }
    #intro .blocks {
        margin-bottom: 50px;
    }
    #intro .blocks .content .number > span > span.dv,
    #intro .blocks2 .content .number > span > span.dv {
        font-size: 18px;
    }

    /* ------------------
	movie
	--------------------- */
/*
    #movie {
        padding: 60px 0 70px;
    }

    #movie h2 {
        margin: 0 auto 24px;
        font-size: 28px;
        letter-spacing: 2px;
    }

    #movie h2 span {
        margin: 0 0 4px;
        font-size: 14px;
        letter-spacing: 3px;
    }

    #movie .m_list {
        display: block;
        margin: 0 auto 40px;
    }

    #movie .m_list .ml_main {
        width: 100%;
        padding: 0 0 28px;
    }

    #movie .m_list .ml_main article a .imgbox {
        width: 100%;
        margin: 0 0 12px;
    }

    #movie .m_list .ml_main article a .textbox h3 {
        max-height: 42px;
        margin: 0 0 8px;
        font-size: 14px;
    }

    #movie .m_list .ml_main article a .textbox p {
        font-size: 12px;
    }

    #movie .m_list .ml_sub {
        width: 100%;
        padding: 0;
    }

    #movie .m_list .ml_sub article a .imgbox {
        width: 130px;
    }

    #movie .m_list .ml_sub article a .imgbox img {
        width: 100%;
        height: auto;
    }

    #movie .m_list .ml_sub article a .textbox {
        width: calc(100% - 130px);
        padding: 0 0 0 12px;
    }

    #movie .m_list .ml_sub article a .textbox h3 {
        max-height: 42px;
        margin: 0 0 8px;
        font-size: 14px;
    }

    #movie .m_list .ml_sub article a .textbox p {
        font-size: 12px;
    }

    #movie .detail-btn a {
        min-width: 270px;
        padding: 20px 40px 22px;
        box-sizing: border-box;
        font-size: 14px;
    }

    #movie .detail-btn a::before {
        right: 16px;
        width: 8px;
        height: 8px;
    }
*/

	/* ------------------
	robot
	--------------------- */
	#robot {
		padding: 48px 0;
	}
	
	#robot .robot__sharing h3  {
        margin: 0 0 8px;
        font-size: 24px;
    }
    
	#robot .robot__sharing h3 span {
		margin: 0;
        font-size: 12px;
    }
    
	#robot .robot__sharing .intro {
		margin-bottom: 28px;
		font-size: 14px;
		text-align: center;
		line-height: 2;
	}
	
	#robot .robot__sharing .sharing-list {
		display: block;
		margin-left: 0;
	}
	
	#robot .robot__sharing .sharing-list article {
		width: 100%;
		margin: 0 0 12px;
	}
	
	#robot .robot__sharing .sharing-list article .title {
		padding: 12px;
	}
	
	#robot .robot__sharing .sharing-list article .title .icon img {
		width: 28px;
	}
	
	#robot .robot__sharing .sharing-list article .title h4 {
		padding-left: 10px;
		font-size: 15px;
		line-height: 1.3;
	}
	
	#robot .robot__sharing .sharing-list article .content {
		padding: 16px 16px 20px;
	}
	
	#robot .robot__sharing .sharing-list article .content h5 {
		margin-bottom: 12px;
		font-size: 16px;
	}
	
	#robot .robot__sharing .sharing-list article .content ul li {
		min-height: 48px;
		font-size: 14px;
	}
	
	#robot .robot__sharing .sharing-list article .content ul li + li {
		margin-left: 20px;
	}
	
	#robot .robot__movie h3  {
        margin: 0 0 24px;
        font-size: 24px;
        line-height: 1.4;
    }
    
	#robot .robot__movie h3 span {
		margin-bottom: 12px;
        font-size: 12px;
    }
		
	#robot .robot__movie .flex_box {
        display: block;
        margin: 0 auto;
    }

    #robot .robot__movie .flex_box article {
        width: 100%;
        margin: 0 0 32px;
    }

    #robot .robot__movie .flex_box article a .imgbox {
        width: 100%;
        margin: 0 auto 12px;
    }

    #robot .robot__movie .flex_box article a .imgbox img {
        width: 100%;
        height: auto;
    }

    #robot .robot__movie .flex_box article a .textbox p {
        margin: 0 auto 8px;
        font-size: 12px;
    }

    #robot .robot__movie .flex_box article a .textbox h3 {
        max-height: 48px;
        font-size: 14px;
    }

    #robot .robot__movie .detail-btn a {
        min-width: 270px;
        padding: 20px 40px 22px;
        box-sizing: border-box;
        font-size: 14px;
    }

    #robot .robot__movie .detail-btn a::before {
        right: 16px;
        width: 8px;
        height: 8px;
    }

    /* ------------------
	price
	--------------------- */
    #price h3 > span {
        font-size: 12px;
    }
    #price h3.title {
        font-size: 24px;
    }
    
    #price {
        padding: 50px 0;
    }

    #price .describe {
        font-size: 18px;
        padding-bottom: 40px;
    }

	.plan-header .plan-td,
	.plan-body .item{
		display: flex;
		align-items: center;
	}
	
	.plan-header .plan-th{
		height: auto;
	}
	.plan-header .plan-td{
		padding: 12px 15px;
	}

    .plan-wrapper {
        flex-direction: column;
        gap: 30px;
    }

    .plan-labels {
        display: none;
    }

    .plan-card {
        width: 100%;
    }
	
	.plan-card .label{
		width: 40%;
		font-size: 14px;
		text-align: left;
	}

    .plan-header {
        height: auto;
    }

    .plan-header h4 {
        font-size: 20px;
    }

    .plan-header .tag {
        font-size: 14px;
    }

    .plan-header .price {
        font-size: 16px;
    }

    .plan-header .price strong {
        font-size: 27px;
    }

    .plan-header .sub {
        font-size: 14px;
    }

    .plan-body .item {
        padding: 12px 15px;
        font-size: 14px;
    }

    .plan-body .item p {
        padding-left: 36px;
    }

    .plan-body .item p::before {
        width: 20px;
        height: 20px;
    }

    .plan-card.new:before {
        width: 50px;
        height: 50px;
        font-size: 14px;
        top: -22px;
        right: 10px;
        padding: 15px 5px;
    }

    #price .price_note p {
        font-size: 10px;
    }

    
    
    /* ------------------
	qa
	--------------------- */
    #qa {
        height: auto;
        padding: 0 20px 50px;
    }
    #qa h3 > span {
        font-size: 12px;
    }
    #qa h3.title {
        font-size: 24px;
        padding: 46px 0 20px;
    }
    #qa dl .down {
        display: none;
    }
    #qa dl {
        padding: 20px;
    }
    #qa dl dd > .sub,
    #qa dl dt > .sub {
        max-width: 83%;
    }
    #qa dl dt > span,
    #qa dl dd > span.word {
        margin-right: 5px;
        font-size: 20px;
    }
    #qa dl dt > span {
        vertical-align: top;
    }
    #qa dl dt > .sub {
        font-size: 16px;
        line-height: 25px;
    }
    #qa dl {
        clip-path: polygon(2% 0%, 100% 0, 100% 97%, 98% 100%, 0 100%, 0 4%);
    }

    /* ------------------
	contact
	--------------------- */
    #contact h3 > span {
        font-size: 12px;
    }
    #contact h3.title {
        font-size: 24px;
        padding: 35px 0 15px;
    }
    #contact .content {
        padding: 20px;
    }
    #contact .content .form form .form-group .form-check {
        display: block;
        line-height: 25px;
    }
    #contact .content .form form .form-group label {
        font-size: 14px;
    }
    #contact .content .form form .form-group input::placeholder {
        font-size: 14px;
    }
    #contact .content .form-submit-wrap {
        margin: 40px 0;
    }
    #contact .content .form form .form-group input[type="text"],
    textarea {
        font-size: 14px;
    }
    textarea {
        margin-top: 12px;
    }

    /* ------------------
	sponsors
	--------------------- */
    #sponsors {
        height: auto;
        padding-bottom: 50px;
    }
    #sponsors h3 > span {
        font-size: 12px;
    }
    #sponsors h3.title {
        font-size: 24px;
        padding: 54px 0 20px;
    }
    #sponsors .cfx li:first-child,
    #sponsors .cfx li:last-child {
        float: none;
    }
    #sponsors .cfx li a > img {
        width: 100%;
        height: auto;
        max-width: 320px;
    }
    #sponsors .cfx {
        padding: 0 20px;
    }
    #sponsors .cfx li {
        margin-bottom: 20px;
    }
    #sponsors .cfx li a {
        font-size: 13.5px;
    }

    /* ------------------
	エラー画面
	--------------------- */
    .note {
        padding: 30px 0;
        margin: 60px auto 0;
    }
    .note h3 {
        font-size: 28px;
        text-align: center;
        letter-spacing: 1px;
        padding: 0 0 20px;
    }
    .note .caution {
        font-size: 1.4rem;
        font-size: 14px;
        text-align: center;
        border: solid 1px #000;
        padding: 10px 5%;
        width: 90%;
        margin: 0 auto 40px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        line-height: 22px;
    }
    .note .alert span {
        display: block;
        font-size: 1.6rem;
        font-size: 16px;
        text-align: center;
        padding: 0 0 20px;
    }
    .note .btn {
        padding: 30px 0 0;
    }
    .note .btn a {
        background: #00abd8;
        display: block;
        margin: auto;
        width: 240px;
        font-size: 1.6rem;
        font-size: 16px;
        color: #fff;
        line-height: 60px;
    }

    /* ------------------
	確認画面
	--------------------- */
    .note table {
        margin: 0 auto;
        display: block;
        width: 90%;
    }
    .note table tbody,
    .note table tr {
        display: block;
        width: 100%;
        border: none;
    }
    .note table th {
        display: block;
        width: 100%;
        padding: 10px 3%;
        background: #e5e5e5;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 16px;
    }
    .note table td {
        display: block;
        width: 100%;
        max-width: inherit;
        font-size: 16px;
        padding: 10px 3% 25px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }
    .note input[type="submit"] {
        vertical-align: top;
        line-height: 60px;
        padding: 0;
        margin: 10px auto 0;
        width: 240px;
        border-radius: 0;
    }
}

@media screen and (max-width: 1300px) and (min-width: 640px) {
    #intro .blocks2 {
        float: left;
    }
}
