@charset "utf-8";
/* ====================================================

	PC教室 poppo the catサイト(5.1)　base.css

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

/* ************** ページ全体 ************** */
body {
	width: 100%;
	background: #fff;
	color: #333333;
	font-size: 16px;
	font-family: "メイリオ","Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", "Helvetica", "sans-serif";
	line-height: 150%;
	word-break: break-all;
	_display: inline;
	_zoom: 1;
}

a {
	text-decoration: none;
	outline: none;
}
a:link {
	color: #333;
}
a:visited {
	color: #333;
}
a:hover {
	color: #0000cd;
}

a.alp:link img,
a.alp:visited img {
	opacity: 1;
}
a:hover img,
a.alp:hover img {
	opacity: 0.5;
}

/* *********** header main footer *********** */
header,footer {
	width: 100%;
}

nav {
	padding: 6px 0px;
	background: url(../images/shabondama_head.png) no-repeat right top CornflowerBlue;
}

article {
	width: 96%;
	max-width: 800px;
	margin: 40px auto;
}

section {
	margin: 0px 0px 40px 0px;
}

p {
	margin: 0px 0px 10px 30px;
}

/* ************** header ************** */

ul#navbar {
	margin-left: 150px;
}

ul#navbar li {
	display: inline-block;
	padding: 4px 0px 3px;
	width: 21%;
	font-size: 110%;
	font-weight: bold;
	text-align: center;
//	background: #ccc;
	border: 1px solid #ccc;
}
ul#navbar li.home {
	width: 70px;
	background: #fff;
}
/*
ul#contact {
	display: inline;
	margin-left: 60%;
}

ul#contact li{
	display: inline;
}

ul#contact li img {
	width: 70px;
	max-width: 100%;
}
*/

/* ************** list(number) ************** */

ol.answer {
	list-style-position: outside;
	margin-left:55px;
}
ol.answer li {
	list-style-type: decimal;
}
ul.answer-in {
	list-style-position: inside;
	margin:0px 0px 10px 20px;
}
ul.answer-in li {
	list-style-type: none;
}


/* ************** sns ************** */
.footer_sns {
	clear: both;
	width: 100%;
	text-align: center;
}
.footer_sns img {
	width: 50px;
	height: auto;
	margin: 0px 20px 0px 20px;
}

/* ************** footer ************** */
footer {
	clear: both;
	text-align: center;
	border-top: 1px solid #ccc;
	background: #eee;
}
footer ul {
	margin: 5px 0px 10px 0px;
}
footer ul li {
	display: inline-block;
	line-height: 300%;
	margin-right: 1.5rem;
}

/* ************** footer_nav ************** */
.footer_nav {
	width: 96%;
	max-width: 800px;
	margin: 20px auto;
	text-align: center;
}


dt {
	font-weight; bold;
	color: olive;
}
dd {
	margin-bottom: 10px;
}

/* ************** クリア ************** */
.clr {
	clear: both;
}
.clearfix::before, .clearfix::after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
/* ************** ページトップ ************** */
.page-top {
	position: fixed;
	bottom: 50px;
	right: 30px;
}

/* ************** 揃え ************** */
.center {
	text-align: center;
}
.right {
	text-align: right;
}

.txt-bottom {
	vertical-align: text-bottom;
}

.vtop{
	vertical-align: top;
}

/* ************** 改行 ************** */
.sp {
	display: none;
}


/* ************** 蛍光マーカー ************** */
.marker-pink {
  background: linear-gradient(transparent 60%, #ff99cc 0%);
/*transparent 60%
・マーカーの太さを指定します。
太い⇒０に近く、細い⇒100に近い数字。
・#ff99cc 0%
マーカーのカラーコード。%は透過度。*/
} 
.marker-yellow {
  background: linear-gradient(transparent 60%, #ffff00 0%);
} 


/* ************** text-link_marker ************** */
.cp_textlink07 {
  position: relative;
  display: inline-block;
  padding: 5px;
  font-size: 110%;
  color: #9C27B0;
  text-decoration: none;/*元々のアンダーラインを非表示にしておく*/
}
/*擬似要素の設定（共通）*/
.cp_textlink07::before,
.cp_textlink07::after {
  position: absolute;
  content: '';
  border-radius: 3px;
}
/*hover前の表示（背景塗りつぶし）*/
.cp_textlink07::before {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(245,198,28 ,.2);
//  background: rgba(156,39,176 ,.4);
  border: 1px solid #f5c61c;
//  border: 1px solid #9C27B0;

  transition: all 0.3s ease;
}
/*hover時の表示（背景塗りつぶし）*/
.cp_textlink07:hover:before {
  background: rgba(245,198,28 ,.4);
//  background: rgba(156,39,176 ,.2);
  border: none;
}
/*hover前の表示（ライン）*/
.cp_textlink07::after {
  top: -4px;
  bottom: -4px;
  left: -4px;
  right: -4px;
  width: calc(100% + 6px);
  height: calc(100% + 6px);
//  border: 1px solid #9C27B0;
  opacity: 0;
  transition: all 0.3s;
}
/*hover時の表示（ライン）*/
.cp_textlink07:hover:after {
  top: 2px;
  left: 2px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
  opacity: 1;
}


/* ************** btn_kado-maru ************** */
.btn01 {
  margin: 40px auto;
  text-align: center;
}
a.btn_kado-maru {
  position: relative;
  display: inline-block;
//  display: block;
  width: 250px;
  padding: 0.8em;
  text-align: center;
  text-decoration: none;
  color: #FFF;
  background: #FFA906;
  border-bottom: 2px solid #AB7000;
  border-radius: 4px;
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.2);
}
a.btn_kado-maru:active {
  border-bottom: 2px solid #26C6DA;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.3);
}


/* ************** box_cross交差線 ************** */
.box_cross{
    margin:2em 0;
    position: relative;
    padding: 0.5em 1.5em;
    border-top: solid 2px black;
    border-bottom: solid 2px black;
}
.box_cross:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: black;
}
.box_cross:before {left: 10px;}
.box_cross:after {right: 10px;}
.box_cross p {
    margin: 0; 
    padding: 0;
}


/* ************** box_kado-ore ************** */
.sq_kado-ore_B-yellow {
	position: relative;
	background: rgba(245, 198, 28, 0.3);
	box-shadow: 0px 0px 0px 5px rgba(245, 198, 28, 0.3);
	border: dashed 2px white;
	padding: 0.4em 1em;
//	color: #454545;
}
.sq_kado-ore_B-yellow:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #f5c61c;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
.sq_kado-ore_B-yellow:hover {
//	background: #ffdfef;
	background: rgba(245, 198, 28, 0.7);
}
*/
.sq_kado-ore_B-yellow02 {
	border: dashed 2px #f5c61c;
}
.sq_kado-ore_deepblue {
	position: relative;
	background: rgba(0, 191, 255, 0.3);
	box-shadow: 0px 0px 0px 5px rgba(0, 191, 255, 0.3);
	border: dashed 2px white;
	padding: 0.4em 1em;
//	color: #454545;
}
.sq_kado-ore_deepblue:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #00bfff;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
.sq_kado-ore_deepblue:hover {
//	background: #ffdfef;
	background: rgba(0, 32, 96, 0.7);
}
*/
.sq_kado-ore_W-blue {
	position: relative;
	background: rgba(0, 32, 96, 0.3);
	box-shadow: 0px 0px 0px 5px rgba(0, 32, 96, 0.3);
	border: dashed 2px white;
	padding: 0.4em 1em;
//	color: #454545;
}
.sq_kado-ore_W-blue:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #002060;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
.sq_kado-ore_W-blue:hover {
//	background: #ffdfef;
	background: rgba(0, 32, 96, 0.7);
}
*/
.sq_kado-ore_E-green {
	position: relative;
	background: rgba(45, 181, 45, 0.3);
	box-shadow: 0px 0px 0px 5px rgba(45, 181, 45, 0.3);
	border: dashed 2px white;
	padding: 0.4em 1em;
//	color: #454545;
}
.sq_kado-ore_E-green:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #2db52d;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
.sq_kado-ore_E-green:hover {
//	background: #ffdfef;
	background: rgba(45, 181, 45, 0.7);
}
*/

.sq_kado-ore_P-orange {
	position: relative;
	background: rgba(199, 70, 40, 0.3);
	box-shadow: 0px 0px 0px 5px rgba(199, 70, 40, 0.3);
	border: dashed 2px white;
	padding: 0.4em 1em;
//	color: #454545;
}
.sq_kado-ore_P-orange:after {
	position: absolute;
	content: '';
	left: -7px;
	top: -7px;
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: #fff #fff #c74628;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/*
.sq_kado-ore_P-orange:hover {
//	background: #ffdfef;
	background: rgba(199, 70, 40, 0.7);
}
*/

/* ************** box_scotch-tape ************** */
.scotch-tape {
   width: 320px;/* 紙の横幅 100%にすると全幅表示に */
   padding: 30px;
   margin: 3em auto;
   background: #fefde3;/* 紙の色 */
   color: #000;/* 文字色 */
   box-shadow: 4px 4px 4px rgba(0,0,0,0.03);transform:rotate(2deg);
   word-break: break-all;
}
.scotch-tape p {
    margin: 10px; 
    padding: 0;
//    font-size: 0.9em;
}
.scotch-tape_tape {
    width: 50%;
    height: 35px;
    margin: -50px auto 0;
    background: rgba(147, 254, 255, 0.5);/* テープの色 */
    transform: rotate(-3deg);
    opacity: 0.9;
}
.scotch-tape_title {
    text-align: center;
    font-size: 1.3em!important;
    margin-top: 20px!important;
}
.scotch-tape_subtitle {
    text-align: center;
    font-size: 0.7em!important;
    margin-bottom: 1em!important;
}

.box_link {
	display: block;
	width: 100%;
}


/* ************** list-marker_fukidashi-maru ************** */
ul.cp_list-fuki {
  padding: 0em 0.5em 0.3em 30px;
  list-style-type: none;
}
ul.cp_list-fuki li {
  position:relative;
  padding: 0em 0.5em 0.5em 25px;
  line-height: 1.5em;
  font-size: 112%;
}
ul.cp_list-fuki li::before,
ul.cp_list-fuki li::after {
  position: absolute;
  content: '';
  display: flex;
  justify-content: center;
  align-items: center;
}
ul.cp_list-fuki li::after {
  top: 0.3em;
  left: 0em;
  width: 15px;
  height: 15px;
  background-color: #4DD0E1;
  border-radius: 45%;
}
ul.cp_list-fuki li::before {
  top: 0.5em;
  left: 0.8em;
  height: 0;
  width: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 8px solid #4DD0E1;
}

.cp_list-fuki_in {
	margin-left: 10px;
	font-size: 88%;
}


/* ************** list-marker_fukidashi-カウント ************** */
ol.cp_list-fuki-count {
  padding: 0 0 0 55px;
  counter-reset:cp_clist; /*数字をリセット*/
  list-style-type: none;
}
ol.cp_list-fuki-count li {
  position:relative;
//  background: #F8BBD0;
  padding: 0 5px;
  margin: 0 0 10px 30px;
  font-weight: bold;
  font-size: 110%;
}
ol.cp_list-fuki-count li:before {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  /* カウントさせる */
  counter-increment: cp_clist;
  content: counter(cp_clist) '日目';
  /*装飾*/
  font-weight: bold;
  color: #fff;
  background: #F06292;
  width: 50px;
  height: 22px;
  text-align: center;
  /*位置の調整*/
  padding: 0;
  margin: 2px 0 0 -60px;
}
ol.cp_list-fuki-count li:after {
  position: absolute;
  top: 9px;
  left: -5px;
  content:'';
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 7px solid #F06292;
}

.cp_list-fuki-count_in {
	margin: 0 0 20px 15px;
}


/* ************** list-marker_asterisk ************** */
ul.list_aster {
    list-style: none;
    padding-left: 40px; /* リスト全体の左余白 */
}

.list_aster li {
    padding-left: 10px; /* テキストの左側余白 */
    margin-bottom: 3px; /* 項目間の間隔 */
    position: relative;
}

.list_aster li::before {
    content: "＊"; /* 番号なしのアスタリスク */
    position: absolute;
    left: -10px; /* アスタリスクの位置調整 */
    color: IndianRed;
}


/* ************** list-marker_asterisk-カウント ************** */
ul.list_aster-count {
    list-style: none;
    padding-left: 50px; /* 左の余白を調整 */
    counter-reset: item;}

.list_aster-count li {
    counter-increment: item;
    padding-left: 18px; /* テキストの左側余白 */
    margin-bottom: 3px; /* 項目間の間隔 */
    position: relative; /* 疑似要素の配置を調整 */
}

.list_aster-count li::before {
    content: "＊" counter(item) " ";
    position: absolute;
    left: -20px; /* 番号の位置を調整 */
    color: IndianRed;
}


/* ************** margin ************** */
.mg_t0 {
	margin-top: 0px;
}
.mg_t10 {
	margin-top: 10px;
}
.mg_t15 {
	margin-top: 15px;
}
.mg_t20 {
	margin-top: 20px;
}
.mg_t25 {
	margin-top: 25px;
}
.mg_t30 {
	margin-top: 30px;
}
.mg_t35 {
	margin-top: 35px;
}
.mg_t40 {
	margin-top: 40px;
}
.mg_b0 {
	margin-bottom: 0px;
}
.mg_b10 {
	margin-bottom: 10px;
}
.mg_b15 {
	margin-bottom: 15px;
}
.mg_b20 {
	margin-bottom: 20px;
}
.mg_b25 {
	margin-bottom: 25px;
}
.mg_b30 {
	margin-bottom: 30px;
}
.mg_d35 {
	margin-bottom: 35px;
}
.mg_d40 {
	margin-bottom: 40px;
}
.mg_l0 {
	margin-left: 0px;
}
.mg_l10 {
	margin-left: 10px;
}
.mg_l15 {
	margin-left: 15px;
}
.mg_l20 {
	margin-left: 20px;
}
.mg_l25 {
	margin-left: 25px;
}
.mg_l30 {
	margin-left: 30px;
}
.mg_l35 {
	margin-left: 35px;
}
.mg_l40 {
	margin-left: 40px;
}


/* ************** フォント ************** */
.font_pop {
	font-family: "HGP創英角ﾎﾟｯﾌﾟ体";
}

.font110 {
	font-size: 110%;
}
.font120 {
	font-size: 120%;
}
.font130 {
	font-size: 130%;
}
.font140 {
	font-size: 140%;
}
.font150 {
	font-size: 150%;
}
.font160 {
	font-size: 160%;
}
.font170 {
	font-size: 170%;
}
.font_sm {
	font-size: 80%;
}
.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal;
}


/* ************** 上付き文字 ************** */
.uetsuki {
  vertical-align: super;
  font-size: smaller;
}


/* ************** カラー ************** */
.logo_blue {
	color: #001689;
}
.logo_yellow {
	color: #ffff00;
}
.red {
	color: red;
}
.indianred {
	color: IndianRed;
}
.hotpink {
	color: hotpink;
}
.deeppink {
	color: deeppink;
}
.orange {
	color: orange;
}
.darkorange {
	color: darkorange;
}
.P-orange {
	color: #c74628;
}
.P-orange2 {
	color: #d14828;
}
.B-yellow {
	color: #f5c71c;
}
.ivory {
	color: #fffff0;
}
.green {
	color: green;
}
.lime-green {
	color: #5AFF19;
}
.palegreen {
	color: #98fb98;
}
.E-green {
	color: #2db52d;
}
.E-green2 {
	color: #207347;
}
.blue {
	color: blue;
}
.blue2 {
	color: #3094d2;
}
.deepskyblue {
	color: deepskyblue;
}
.W-blue2 {
	color: #285599;
}
.attention{
	color: red;
}

.home a:link {
	color: orange;
}
.home a:visited {
	color: orange;
}

/* ************** contact(アイコン) ************** */
#contact_icon {
	text-align: center;
}
#contact_icon img {
	margin: 0px 5px 0px 5px;
	width: 35%;
}
#contact_icon li {
	display: inline;
}


/* ************** inquiry(お問合せ) ************** */
section.ask {
	margin-top: 20px;
}

.inquiry_add {
	overflow: auto;
}

.inquiry_add li {
	padding-left: 10px;
	padding-bottom: 20px;
	float: left;
}


/* ########## 640px 以下 ########## */
@media (max-width: 640px){

ul#navbar {
	margin: 0px 0px 0px 7px;
	font-size: 90%;
}
ul#navbar li {
	margin-bottom: 2px;
	width: 48%;
}
ul#navbar li.home {
	width: 54px;
}
/*
ul#contact {
	margin-left: 15px;
}
ul#contact li img {
	width: 66px;
	font-size: 90%;
}
*/
.page-top {
	right: 10px;
}

section.ask {
	margin-bottom: 30px;
}

.sp {
	display: inline;
}

#contact_icon img {
	margin: 0px 2px 0px 2px;
	width: 46%;
}
}
