@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/

/*--------------------------------------*/
.center { text-align:center !important;}
.left { text-align:left;}
.right { text-align:right;}
.middle { vertical-align:middle !important;}
.bottom { vertical-align:bottom !important;}
.mt10 { margin-top:10px !important;}
.mt20 { margin-top:20px;}
.mt30 { margin-top:30px !important;}
.mt40 { margin-top:40px;}
.mt50 { margin-top:50px;}
.mb10 { margin-bottom:10px;}
.mb20 { margin-bottom:20px;}
.mb30 { margin-bottom:30px;}
.mb50 { margin-bottom:50px;}
/*--------------------------------------*/

/* スマホで改行をなくす
----------------------------------*/
@media screen and (max-width: 640px) {
    .br-sp { display:none; }
}

/* スマホの時だけ改行（PCの時非表示）
----------------------------------*/
@media screen and (min-width:640px) {
    .br-pc { display:none; }
}

.clearbox { clear: both;}

.f_Right {float:right;}

@media only screen and (max-width: 640px) {
.f_Right {float: none;}
}

/*--------------------------------------*/

body{
	overflow-x:hidden;
	}
#wrapper, #content, .post{
	overflow: visible;
	}

p.note {
    font-size: 90% !important;
}

/* ヘッダー
----------------------------------*/

#header .add {
    text-align: left;
}
#header .contact .tel {
    color: #2051A2;
}
#header .contact .tel span {
    font-size: 50%;
    float: left;
    margin-top: -20px;
    font-weight: bold;
	margin-right: -186px;
	color: #000000;
}

#header .logo img {
    max-height: 85px;
}

/*#breadcrumb {
    background-color: #2051a2;
	margin-top: 5px;
}*/

@media screen and (max-width:640px) {
#header .contact .tel {
    margin-top: 20px;
}
#header .contact .tel span {
    margin-left: 20px;
}
}

@media screen and (min-width: 640px){
.wide .c1thumbWrap, .wide .c2thumbWrap, .wide .c3thumbWrap {
    margin-top: 2% !important;
}
}

/* フッター
----------------------------------*/
#footer .inner ul {
    text-align: center;
}
#footer .inner ul li {
    font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	font-weight: bold;
}

/* グローバルメニュー
----------------------------------*/
@media print, screen and (min-width: 1024px){
nav#mainNav ul li a {
    padding: 15px 25px;
}
}

/* 見出し
----------------------------------*/
h1.title {
    padding-bottom: 2%;
    margin-bottom: 2%;
}

h1.title.first {
    text-shadow: #ffffff 2px 0px, #ffffff -2px 0px, #ffffff 0px -2px, #ffffff 0px 2px, #ffffff 2px 2px, #ffffff -2px 2px, #ffffff 2px -2px, #ffffff -2px -2px, #ffffff 1px 2px, #ffffff -1px 2px, #ffffff 1px -2px, #ffffff -1px -2px, #ffffff 2px 1px, #ffffff -2px 1px, #ffffff 2px -1px, #ffffff -2px -1px;
}

.post h2 {
	background: linear-gradient(transparent 80%, rgba(30,177,252,0.5) 80%);
    padding-bottom: 0;
    margin-top: 4%;
    margin-bottom: 2%;
}

.post h3 {
    font-weight: bold;
}

.post h4 {
    font-size: 18px;
    padding-bottom: 1%;
}

.post p {
    font-size: 16px;
    line-height: 1.8em;
}

@media print, screen and (max-width:640px) { 
h1.title.first {
    font-size: 180%;
}
.post h3 {
    font-size: 140%;
}
}

/* TOP
----------------------------------*/

.home h1.title.first.front-post {
    border: none;
}

.home h1.title.first.front-post span {
    font-size: 40px;
    font-weight: bold;
    line-height: 1.5em;
    color: #2051A2;
}
.home h1.title.first.front-post span.orange {
    color: orange;
    font-size: 80%;
}

.home h1.title.first.front-post span.orange:after {
    content: url(/struct/wp-content/uploads/top_h1span_right.png);
    margin: 17px;
    position: relative;
    top: -7px;
}

.home h1.title.first.front-post span.orange:before {
    content: url(/struct/wp-content/uploads/top_h1span_left.png);
    margin: 22px;
    position: relative;
    top: -7px;
}

h1.title.first.front-post {
    background-image: url(/struct/wp-content/uploads/top_h1_001.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 800px;
    padding: 5%;
	margin:0;
}

@media screen and (max-width:800px) {
h1.title.first.front-post {
    background-size: 100%;
}
}

@media screen and (max-width:640px) {
.home h1.title.first.front-post span.orange:before {
	content: "";
	display: inline-block;
    width: 24px;
    height: 30px;
	margin: 6px;
    background: url(/struct/wp-content/uploads/top_h1span_left.png) no-repeat;
    top: -13px;
    background-size: contain;
    vertical-align: middle;
}
.home h1.title.first.front-post span.orange:after {
	content: "";
	display: inline-block;
    width: 24px;
    height: 30px;
	margin: 6px;
    background: url(/struct/wp-content/uploads/top_h1span_right.png) no-repeat;
    top: -13px;
    background-size: contain;
    vertical-align: middle;
}
.home h1.title.first.front-post span {
    font-size: 30px;
}
}
@media screen and (max-width:460px) {
h1.title.first.front-post {
	background: none;
}
}

@media screen and (max-width:320px) {
.home h1.title.first.front-post span {
    font-size: 25px;
}
}


/* TOP:背景画像
----------------------------------*/

.home .post {
    background: none;
}
.home p.text {
    width: 65%;
    margin: 5% auto;
    line-height: 2em;
    font-weight: bold;
	text-shadow: 2px 2px 1px #ffffff,
             -2px 2px 1px #ffffff,
             2px -2px 1px #ffffff,
             -2px -2px 1px #ffffff;
}

.home p.text span {
    font-size: 130%;
    line-height: 2.8em;
}

.home #wrapper {
    width: 100%;
    background-image: url(/struct/wp-content/uploads/bg_img_001.png);
    background-size: 100%;
    background-repeat: no-repeat;
}

@media screen and (min-width:1024px) {
#content.wide {
    width: 1100px;
    float: none;
    margin: 0 auto;
}}

@media screen and (max-width: 1023px) {
.home #wrapper {
    background-size: cover;
    background-position: center;
}
.home p.text {
    width: 90%;
}
}

/* TOP:スクラッチについて
----------------------------------*/

.top_box {
    background: rgba(255, 255, 255, 0.5);
    padding: 3%;
    margin: 5% 0;
    border: 5px solid #84d4fd;
    border-radius: 20px;
}
.top_box p {
    font-size: 15px;
}
.top_box p.tittle {
    font-size: 24px;
    font-weight: bold;
    color: #84d4fd;
}
.top_box p span {
    font-weight: bold;
    background-color: rgb(253, 253, 132);
}


/* TOP:バナー
----------------------------------*/

/*@media only screen and (max-width: 799px){
.wide .c3thumbWrap ul.thumb li {
    width: 350px !important;
}
}*/
@media screen and (min-width:640px) {
.wide .c1thumbWrap, .wide .c2thumbWrap, .wide .c3thumbWrap {
    margin-top: 50px;
}
.wide .c3thumbWrap ul.thumb li {
    filter: drop-shadow(6px 4px 7px rgba(0,0,0,0.6));
}
}


/* TOP:新着情報
----------------------------------*/
.home h1.title.bottom-loop {
    background-color: #006535;
    border-bottom: 0;
    border-radius: 15px 15px 0 0;
    color: #fff;
    padding: 20px 0 10px 30px;
    text-align: left;
    font-size: 23px;
    letter-spacing: 0.2em;
	margin:0;
}
.home ul.postlist {
    border: 5px solid #006535;
    border-radius: 0 0 15px 15px;
}


/* TOP:ロボット画像飾り
----------------------------------*/
@media screen and (min-width:1023px) {
.home p.text {
	margin-right: calc(((100vw - 100%) / 2) * -1);
    margin-left: calc(((100vw - 100%) / 2) * -1);
    padding: 5em calc((100vw - 100%) / 2);
    width: 100%;
    background: none;
    background-image: url(/struct/wp-content/uploads/top_contents_img_001.png);
    background-position: center;
    background-repeat: no-repeat;
    margin-top: -50px;
/*background-position: top center;
    background-repeat: repeat-y;*/
}
}

/* 下層ページ : 
----------------------------------*/

body:not(.home)  #wrapper{
    width: 100%;
background-color: #1eb1fc;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' %3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' x2='0' y1='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%23ffffff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpattern id='b' width='24' height='24' patternUnits='userSpaceOnUse'%3E%3Ccircle fill='%231eb1fc' cx='12' cy='12' r='12'/%3E%3C/pattern%3E%3Crect width='100%25' height='100%25' fill='url(%23a)'/%3E%3Crect width='100%25' height='100%25' fill='url(%23b)' fill-opacity='0.1'/%3E%3C/svg%3E");
background-attachment: fixed;
}

body:not(.home) .post {
    background-color: rgba(255,255,255,0.8);
    border-radius: 30px;
    padding: 3% 5%;
    padding-bottom: 5%;
    margin-bottom: 7%;
	margin-top:5%;
}

@media screen and (min-width:768px) {
.page-programming-content .post {
    background-image: url(/struct/wp-content/uploads/algo_1.png);
    /*background-position: bottom 20px right 20px;*/
    background-position: top 20px right 20px;
    background-repeat: no-repeat;
    background-size: 26%;
}

body:not(.home) .post h3 {
    position: relative;
	padding: 1% 2%;
    background: -moz-linear-gradient(to right, rgb(30, 177, 252), transparent);
    background: -webkit-linear-gradient(to right, rgb(30, 177, 252), transparent);
    background: linear-gradient(to right,rgb(30, 177, 252), transparent);
}

.page-programming-content h3.short {
    width: 70%;
}
.page-programming-content h2.short {
    width: 65%;
}
.page-sitemap .post {
    background-image: url(/struct/wp-content/uploads/illustration_6.png);
    background-position: top right 10%;
    background-repeat: no-repeat;
    background-size: 473px;
}
/*.page-robot-programming .post {
    background-image: url(/struct/wp-content/uploads/robot_bg_img001.png);
    background-repeat: no-repeat;
    background-position: top 130px right 20px;
    background-size: 45%;
}*/
}

/* 下層ページ: ゲーム
----------------------------------*/

.about_number {
    display: inline-block;
    z-index: 0;
    font-size: 160px;
    line-height: 1.1;
    font-family: OswaldBold, YuGothic, 游ゴシック, "Yu Gothic", 游ゴシック体, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Arial, Meiryo, メイリオ, "MS PGothic", sans-serif;
    color: rgb(233, 247, 255);
    top: 0px;
	margin-left: -30px;
}
.page-game-programming h3 {
	padding: 0;
    font-size: 36px;
    margin-bottom: 30px;
    background: none !important;
}
.page-game-programming h3 .title {
    margin-top: -80px;
    position: relative;
    z-index: 2;
    display: block;
    color: #2051a2;
	/*font-weight: normal;*/
	    line-height: 1.2em;
}
.page-game-programming .column2_50 p,.page-game-programming .post h4 {
    text-align: left;
}

p.blue a {    color: #1b48a3;}

@media print, screen and (min-width:640px) { 
.page-game-programming p.logo_img {
    width: 50%;
    margin: 0 auto;
}
}
@media print, screen and (max-width:600px) { 
.page-game-programming .post h2{
	font-size: 180%;
}
.page-game-programming .post h2 span {
    font-size: 70%;
    padding: 0;
}
}
/* 下層ページ: ロボット
----------------------------------*/
.page-robot-programming #gallery-1 {
    margin: auto;
    /*margin-top: 50px;*/
}

.page-robot-programming .gallery-columns-3 .gallery-item img {
    max-width: 100%;
}

.page-robot-programming .post p {
    padding: 1% 5%;
}

.gallery_box {
    margin-top: 50px;
}
.gallery_box p.blue {
    text-align: center;
    font-size: 200%;
    font-weight: bold;
    color: #1eb1fc;
}
@media print, screen and (max-width:640px) { 
.page-robot-programming iframe {
    height: 250px;
}
.gallery_box p.blue {
    font-size: 130%;
    letter-spacing: -2px;
}
}

/* リンクボタン
----------------------------------*/
p.linkBtn.pageLink {
   margin: 0 auto;
   text-align: center;
   padding-bottom: 15px;
   padding-top: 15px;
    background: none;
}

.linkBtn.pageLink a {
	padding: 1em 2em;
	border-radius: 4px;
	min-width: 200px;
}

.linkBtn.pageLink a:hover {
	padding: 1em 2em;
}

.linkBtn.pageLink:hover {
    background: none;
}

.linkBtn a {
	display: inline-block;
	background: #FF0000;
	background: -webkit-linear-gradient(left, #FF0000 0%, #FF0000 100%);
	background: linear-gradient(to right, #FF0000 0%, #FF0000 100%);
	padding: 1em 3em;
	color: #fff;
}

.linkBtn a:hover {
   display: inline-block;
   background: #E80000;
   background: -webkit-linear-gradient(left, #E80000 0%, #E80000 100%);
   background: linear-gradient(to right, #E80000 0%, #E80000 100%);
   padding: 1em 3em;
   color: #fff;
}


/* 下層ページ: 時間割
----------------------------------*/
.page-programming-content .post p {
    font-size: 140%;
}

/*.page-programming-content table {    width: 75%;}*/
.page-programming-content .post table, .post table th, .post table td {
    background: none;
    border: none !important;
    text-align: center;
}
.page-programming-content .post table th {
    font-weight: bold;
    font-size: 18px;
    border-bottom: 1px solid #1fb1fc !important;
    border-right: 1px solid #1fb1fc !important;
}
.page-programming-content .post table td {
    border-right: 1px solid #1fb1fc !important;
}
.page-programming-content .post table th:last-child,.page-programming-content .post table td:last-child {
    border-right: none !important;
}

@media print, screen and (max-width:767px) { 
.page-programming-content table {    width: 100%;}
.page-programming-content .post table th {    font-size: 15px;}
}

/* 投稿ページ : 一覧
----------------------------------*/
.category .post4b {
    background-color: rgba(255,255,255,0.8);
    border-radius: 30px;
    padding: 3% 5%;
}

/* お問い合わせ
----------------------------------*/
.page-contact .c1thumbWrap,.page-thanks .c1thumbWrap {
	    display: none;
}
.page-contact .post table th {
    font-weight: bold;
    font-size: 110%;
}

/*.wpcf7-form .must {    background: none;}
.wpcf7-form .must, .wpcf7-form .option {
    color: #DC143C;
    font-weight: bold;
    margin-left: 0;
    font-size: 85%;
    padding: 0;
    float: right;
}*/

.wpcf7-form .must, .wpcf7-form .option {
    color: #fff;
    font-weight: bold;
    margin-left:0;
    font-size: 12px;
    padding: 0.2em 0.3em;
	    float: none;
}
.wpcf7-form .must {
    background: #DC143C;
    border-radius: 4px;
}

/* th：水色・枠線：白*/
.page-contact .post table th{    background-color: rgba(223, 240, 249, 0.5);}
.page-contact .post table td {    background: none;}
.page-contact .post table, .page-contact .post table th, .page-contact .post table td {    border:1px solid #fff;}

/* 枠線のみ */
.page-contact .post table th, .page-contact .post table td {    background: none;}
.post table, .post table th, .post table td {    border: 1px solid #dcdddd;}

/*
 * サイドバー有りの際に、wrapperに指定した背景が反映されない問題の対処
 */
div#wrapper::after {
	content:"";
	display:block;
	clear:both;
}


.c2thumbWrap {
    width: calc(99% / 2) !important;
    display: inline-block;
}
.c2thumbWrap ul.thumb.gap {
    display: flex;
    justify-content: space-around;
}
.c2thumbWrap ul.thumb.gap li {
    padding: 0;
}
@media print, screen and (max-width:640px) {
	.c2thumbWrap {
		width:100% !important;
	}
	.c2thumbWrap ul.thumb.gap {
		flex-direction:column;
	}
	.wide .c2thumbWrap ul.thumb li {
		width: 100%;
		max-width: 350px;
		margin: 0 auto;
	}
	.wide .c2thumbWrap ul.thumb li:last-child{
		margin: 0 auto;
	}
}